在我的CI配置文件中,我设置了此日志记录阈值:
$config['log_threshold'] = 1;
Run Code Online (Sandbox Code Playgroud)
在index.php中,我设置了以下错误报告:
error_reporting(E_ERROR);
Run Code Online (Sandbox Code Playgroud)
我的期望是,这将记录我记录(使用log_message('error','my error message'))的任何CI错误,以及任何PHP错误.但是,我希望它不会记录PHP通知,只会记录错误.但是,当我查看日志文件时,它似乎也记录了PHP通知:
错误 - 2009-12-18 13:21:50->严重性:注意 - >未定义变量:pageindex /var/www/apps/OS4W/system/application/views/user/view.php 12
错误 - 2009-12- 18 13:21:50->严重性:注意 - >未定义的变量:friendsmode /var/www/apps/OS4W/system/application/views/user/activitytable.php 207
虽然日志行以"ERROR"开头,但实际上这似乎是一个PHP通知,有点像警告,我不想记录.如何确保仅记录CI和PHP错误,而不是PHP通知?我以为error_reporting(E_ERROR)会这样做?
我是CodeIgniter的新手,刚刚发现使用GET方法通过URL传递变量的困难(例如domain.com/page.php?var1=1&var2=2).
我认为一种方法是传递URI段中的变量,但还没有弄清楚如何做到这一点,因为它似乎创建了在控制器中具有一个名为特定URI段的函数的期望?
无论如何我没有使用GET,而是决定通过使用隐藏输入字段中的变量调整提交按钮(伪装成链接)来使用POST.我已经创建了以下解决方案似乎工作正常,但我想知道我是否在这里正确的轨道或是否有更简单的方法通过CodeIgniter中的链接传递变量?
我在application/libraries /中创建了以下类
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class C_variables {
function variables_via_link($action, $link_text, $style, $link_data) {
$attributes = array('style' => 'margin:0; padding:0; display: inline;');
echo form_open($action, $attributes);
$attributes = array('class' => $style, 'name' => 'link');
echo form_submit($attributes, $link_text);
foreach ($link_data as $key => $value){
echo form_hidden($key, $value);
}
echo form_close();
}
}
?>
Run Code Online (Sandbox Code Playgroud)
使用以下CSS:
/*
SUBMIT BUTTON AS LINK
adapted from thread: http://forums.digitalpoint.com/showthread.php?t=403667
Cross browser support (apparently).
*/
.submit_as_link {
background: transparent; …Run Code Online (Sandbox Code Playgroud) 我使用以下代码来检索routes.php中的会话变量
if($this->db_session->userdata('request_url')!="")
{
$route['user/(:any)'] = "search_user_name/redirect_url/".$_SESSION['request_url'];
$this->db_session->unset_userdata('request_url');
}
else {
$route['user/(:any)'] = "search_user_name/index/$1";
}
Run Code Online (Sandbox Code Playgroud)
会话变量将设置为template/header.php
$this->db_session->set_userdata('request_url', $_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]);
Run Code Online (Sandbox Code Playgroud) 我正在尝试一起使用Angular.js和CodeIgniter.
随着ngRoute我的应用程序,我在我的设置main.js:
$locationProvider.html5Mode(true);
$routeProvider.when('/test', {
templateUrl: 'partials/test.html'
});
$routeProvider.otherwise({
templateUrl: 'partials/home.html'
});
Run Code Online (Sandbox Code Playgroud)
在我routes.php,我正在设置:
$route['default_controller'] = 'home';
$route['(:any)'] = "home";
Run Code Online (Sandbox Code Playgroud)
而在我home/index.php,我有<ng-view></ng-view>.
问题是,没有了html5Mode(true)(有/#/对URL)一切工作正常.但除此之外,partials文件仍可正常工作,但无论如何页面都会重新加载.
在Inspector Elements中,事情看起来像这样:
已加载partials/test.html,但页面已实现编码,并显示错误"ngView:undefined".
我还在学习Angularjs.有人可以帮忙吗?
过去几周我一直在使用CodeIgniter作为框架开发一个网站.我一直在考虑实现某些目标的最佳方法,在其他语言的许多其他框架中,它相对简单:可排序表.CodeIgniter默认关闭查询字符串,因为您的URL包含方法参数.所以URL可能如下所示:
/controller/method/param1/param2
Run Code Online (Sandbox Code Playgroud)
您可能认为您可以添加sortBy并sortOrder作为控制器方法的两个附加参数.我并不特别想这样做,主要是因为我想拥有一个可重复使用的控制器.当您使用查询字符串参数时,PHP可以轻松地告诉您是否有一个名为的参数sortBy.但是,当您使用基于URL的参数时,它将随每个控制器而变化.
我想知道我的选择是什么.据我所知,他们是这样的:
sortBy和sortOrder参数,只需吸起来,并制定一些低于可重用组件它.sortBy和sortOrder在会话中(虽然它必须知道你来自哪里,并将您送回原始页面).我简直不敢相信这么简单的任务就会出现这样的问题!我错过了什么吗?有没有人有任何建议?
编辑澄清:我喜欢jQuery,我已经在网站上使用它,所以TableSorter是一个不错的选择.但是,我想进行服务器端排序,因为有些页面可能包含大量结果,包括分页.
我已经完成了图像上传,在CI中重复了很多次.相同的代码在一个页面中工作,但在其他页面中不起作用.当我显示错误时,它显示"您的服务器不支持处理此类图像所需的GD功能." 上传图片的代码是...... \
function do_upload() {
$original_path = './uploads/activity_images/original';
$resized_path = './uploads/activity_images/resized';
$thumbs_path = './uploads/activity_images/thumb';
$this->load->library('image_lib');
$config = array(
'allowed_types' => 'jpg|jpeg|gif|png', //only accept these file types
'max_size' => 2048, //2MB max
'upload_path' => $original_path //upload directory
);
$this->load->library('upload', $config);
$this->upload->do_upload();
$image_data = $this->upload->data(); //upload the image
$image1 = $image_data['file_name'];
//your desired config for the resize() function
$config = array(
'source_image' => $image_data['full_path'], //path to the uploaded image
'new_image' => $resized_path,
'maintain_ratio' => true,
'width' => 128,
'height' => 128 …Run Code Online (Sandbox Code Playgroud) 我正在尝试在PHP Codeigniter中向form_submit添加一个类; 我正在使用以下代码:
$attributes1=array(
'class'=>'btn btn-danger',
);
echo form_submit('loginSubmit', 'Login',$attributes1['class']);
Run Code Online (Sandbox Code Playgroud)
但HTML中呈现的代码如下:
<input type="submit" name="loginSubmit" value="Login" btn="" btn-danger="">
Run Code Online (Sandbox Code Playgroud)
你能不能让我知道我可以把我的班级提交给我的form_submit?
另外如果不清楚,请告诉我哪个部分含糊不清,以便我提供更多说明
非常感谢
嗨,我正在使用codeigniter框架.我已经使用onkey change完成了自动填充操作.我使用ajax将id值发布到我的控制器函数,该函数将从服务表中获取单个数据行.现在我有超过1个记录ow行,它具有相同的id.例如,
+----+-----------------+------+
+ 1 + iPhone6 + 2 +
+----+-----------------+------+
+ 1 + ipod + 5 +
+----+-----------------+------+
Run Code Online (Sandbox Code Playgroud)
现在,当我发布id值时,我有2行具有相同的Id,然后我需要获取数据并在我的视图页面中显示.为此,我需要相应地在表中添加行.
我的控制器功能
<?php
class Admin_billing extends CI_Controller {
public function __construct()
{
parent::__construct();
$this->load->model('billing_model');
}
public function getdetails()
{
$data_to_search=$_POST['val'];
$details=array();
$details['description']=$this->billing_model->get_service_name($data_to_search);
$details['type']=$this->billing_model->get_service_name($data_to_search);
$details['price']=$this->billing_model->get_service_pricevalue($data_to_search);
echo json_encode($details);
}
}
Run Code Online (Sandbox Code Playgroud)
在这里,我有一个getdetails()有阵列details.在那个详细信息数组中,我有单个数据的键和值,例如它可以保存数据
description=>phone order, type=> iphone, price => $7000.这会填充我的视图页面中的数据.现在,如果我有多行,如何使其工作?
我的模特功能
public function get_service_name($id)
{
$this->db->select('*');
$this->db->from('service');
$this->db->where('id', $id);
$query = $this->db->get();
$result = $query->result_array();
return $result[0]['name'];
}
Run Code Online (Sandbox Code Playgroud)
此函数用于从我的数据库中的服务表中获取名称.
我的视图文件. …
我正在使用mPDF库从HTML页面生成PDF文件.它在firefox中工作得很好,但它不是在chrome浏览器中显示PDF文件.
我在chrome中生成PDF时出现以下错误.
以下是我使用mPDF生成PDF的代码
ob_clean();
header('Content-type: application/pdf');
header('Content-Disposition: inline; filename="' . $yourFileName . '"');
header('Content-Transfer-Encoding: binary');
header('Accept-Ranges: bytes');
$mpdf = new PDF( 'c','A4','','',15, 15,10,14,0,0);
$mpdf->useOnlyCoreFonts = false;
$mpdf->SetDisplayMode('real');
$mpdf->list_indent_first_level = 0; // 1 or 0 - whether to indent the first level of a list
$stylesheet = file_get_contents(APPPATH . 'third_party/mpdf/style.css');
$mpdf->WriteHTML($stylesheet,1);
$mpdf->WriteHTML($html);
$mpdf->Output();
Run Code Online (Sandbox Code Playgroud)