如何在Codeigniter查询功能中获取两个日期之间的值?这是我的模型和示例代码.
function get_promo() {
$today = date('Y-m-d');
$query = $this->db->query('SELECT FROM tbl_event WHERE event_id = $id AND event_startdate <= $today
AND event_enddate >= $today');
return $query;
}
Run Code Online (Sandbox Code Playgroud)
但它不起作用,这是我得到的错误
A Database Error Occurred
Error Number: 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM tbl_event WHERE event_id = 36 AND event_startdate <= 2011-06-09 ' at line 1
SELECT FROM tbl_event WHERE event_id = …Run Code Online (Sandbox Code Playgroud) 我有一个表格来更新一些个人资料信息。在用户单击提交按钮my进行更改后,将其重定向到个人资料页面。
所以在将更新的信息插入数据库后,我有以下代码重定向到个人资料页面:
数据库查询在这里...
redirect('studentprofile/get/$id');
Run Code Online (Sandbox Code Playgroud)
$ id是配置文件ID,“ get”是函数,“ studentprofile”是控制器。但这根本不起作用。似乎“重定向”没有获得$ id的值。
当用户提交数据时,它显示错误消息“您提交的URI不允许使用字符”。网址看起来像这样
http:// localhost / sundial / studentprofile / get / $ id
您能告诉我我的脚本有什么问题吗?仅供参考,我正在使用Codeigniter
提前致谢 :)
我下载CodeIgniter 2.1.0,然后按照CodeIgniter 2.1.0上的教程进行操作.
问题是当我尝试在此URL中提交表单时:
http://localhost/CodeIgniter/index.php/news/create
Run Code Online (Sandbox Code Playgroud)
该页面将重定向到此URL:
http://localhost/CodeIgniter/index.php/news/localhost/CodeIgniter/index.php/news/create
Run Code Online (Sandbox Code Playgroud)
我厌倦了很多改变route.php的方法,但它不起作用.我怎样才能解决这个问题??
route.php
$route['news/create'] = 'news/create';
$route['news/(:any)'] = 'news/view/$1';
$route['news'] = 'news';
$route['(:any)'] = 'pages/view/$1';
$route['default_controller'] = 'pages/view';
Run Code Online (Sandbox Code Playgroud)
这是表单页面的代码:
public function create()
{
$this->load->helper('form');
$this->load->library('form_validation');
$data['title'] = 'Create a news item';
$this->form_validation->set_rules('title', 'Title', 'required');
$this->form_validation->set_rules('text', 'text', 'required');
if ($this->form_validation->run() === FALSE)
{
$this->load->view('templates/header', $data);
$this->load->view('news/create');
$this->load->view('templates/footer');
}
else
{
$this->news_model->set_news();
$this->load->view('news/success');
}
}
Run Code Online (Sandbox Code Playgroud)
我注意到当页面加载时的表单页面,下面的代码段将被执行,但是,else段从未得到执行的更改.
if ($this->form_validation->run() === FALSE)
{
$this->load->view('templates/header', $data);
$this->load->view('news/create');
$this->load->view('templates/footer');
}
Run Code Online (Sandbox Code Playgroud)
这是表单页面,没什么特别的,只需调用上面显示的create函数即可. create.php
<h2>Create a news item</h2>
<?php echo …Run Code Online (Sandbox Code Playgroud) 在我的代码编辑器中,我在库文件夹中创建了一个库。我想在该库中加载视图页面。我该怎么做?
这是我的代码:
$this->load->view('view_page');
Run Code Online (Sandbox Code Playgroud)
但是当我使用此代码时,我得到一个错误:
A PHP Error was encountered
Severity: Notice
Message: Undefined property: CI_theme_lib::$load
Filename: libraries/theme_lib.php
Line Number: 9
Run Code Online (Sandbox Code Playgroud)
mycode中有什么问题?
在库中的第9行中,代码为:
$this->load->view('view_page');
Run Code Online (Sandbox Code Playgroud) 我有一个用户注册表单,上传图像与其他表单元素是可选的.因此,有时用户可能无法将图像与其他数据一起上传.
现在问题是即使用户没有上传图像,以下代码总是回显文件已上传
您能否请您告诉我如何检查图像是否是由用户提交并使其回显/显示"未上传"如果没有上传?
提前致谢 :)
在我的控制器文件中
extract($_POST); // <<This is to retrieve all form data at once
if(isset($_FILES['userfile'])){
echo"file uploaded";
} else{
echo "Not Uploaded";
}
Run Code Online (Sandbox Code Playgroud)
这是在我的视图文件中
<input type="file" class="" name="userfile" size="20" />
Run Code Online (Sandbox Code Playgroud) 我从mysql数据库中获取一些信息,我使用以下脚本显示它(我正在使用Codeigniter)
<?php if(count($records) > 0) { ?>
<?php $i = $this->uri->segment(3) + 0; foreach ($records as $row){ $i++; ?>
<?php echo $row['amount']; ?> <br>
<?php } ?>
<?php } else { echo "No Record Found";} ?>
Run Code Online (Sandbox Code Playgroud)
我得到的输出就像是跟随
10,000
20,000.34
15,250.50
Run Code Online (Sandbox Code Playgroud)
现在我要做的是总结所有的值$row['amount'];并将总和的值放入,$sum_value这样当我回显$ sum_value时,我得到以下值
45,250.84
Run Code Online (Sandbox Code Playgroud)
请你告诉我该怎么做.
我知道我可以使用mysql完成总结,但我想学习如何做到这一点.
提前致谢 :)
我保证,我知道最好不要忽视错误.运行XML-Sitemaps生成器会在没有有效会话信息的情况下点击URL以取悦CodeIgniter.结果是每个被抓取的页面都有一个E_NOTICE,以及一个让我疯狂的日志(和电子邮件通知).什么都没有破坏,没有人或机器人受到伤害 - 只有我的理智受到影响.
有几个人为CodeIgniter设计了修复程序unserialize()失败:
我已经在每个前提下运行,仍然会收到以下数百条通知:
NOTICE: unserialize() [<a href='function.unserialize'>function.unserialize</a>]: Error at offset 98 of 128 bytes
Run Code Online (Sandbox Code Playgroud)
这让我回到原点,一个非常简单的问题.这是CI的Session.php中有问题的724行:
$data = @unserialize(strip_slashes($data));
Run Code Online (Sandbox Code Playgroud)
我没有添加抑制性'@' - 它已经存在了.这是不是意味着它会在抛出时特别抑制E_NOTICE消息?如果不是,那条线怎么可能产生所有这些让我想要撕掉我所有头发的通知呢?
php error-handling codeigniter deserialization codeigniter-2
我在主域(domain.com)上安装了CodeIgniter应用程序.现在我想使用一个博客目录(domain.com/blog/),我想安装一个WordPress支持的博客.但问题是我创建了一个名为博客的目录,但是当我尝试通过输入domain.com/blog/来访问它时,我得到CodeIgniter 404而不是fount页面.我对CodeIgniter很新,所以我必须在这里遗漏一些东西.
谢谢
我能够$this->db->insert_id();在codeigniter中使用最后一个插入的id ,是否有任何方法可以获取最后更新记录的id?我用相同的尝试它,$this->db->insert_id();但它不起作用(返回0代替).
我创建了一个新方法来处理401 apache错误.
我的核心类扩展了CI核心类,但是当我调用方法名时,我会收到以下消息:
致命错误:调用未定义的函数
show_401()在
G:\Path\application\controllers\loader.php上线29
class MI_Exceptions extends CI_Exceptions {
function __construct()
{
parent::__construct();
}
/**
* 401 Unauthorized
*
* @access private
* @param string the page
* @param bool log error yes/no
* @return string
*/
function show_401($page = '', $log_error = TRUE)
{
$heading = "401 Unauthorized";
$message = "Unauthorized.";
// By default we log this, but allow a dev to skip it
if ($log_error)
{
log_message('error', '401 Unauthorized --> '.$page);
}
echo $this->show_error($heading, …Run Code Online (Sandbox Code Playgroud)