Tag: codeigniter

用CodeIgniter查询MySQL,select字段为NULL的行

我使用CodeIgniter的Active Record类来查询MySQL数据库。 我需要select一个字段没有设置为NULL的表中的行: $this->db->where('archived !=', 'NULL'); $q = $this->db->get('projects'); 这只返回这个查询: SELECT * FROM projects WHERE archived != 'NULL'; archived字段是DATE字段。 有没有更好的方法来解决这个问题? 我知道我可以自己写查询,但是我不想在整个代码中保留Active Record。

使用CodeIgniter的活动logging将NOW()插入到数据库中

我想在Codeigniter的活动logging中使用mySQL函数NOW()在数据库中插入当前时间。 以下查询将不起作用: $data = array( 'name' => $name , 'email' => $email, 'time' => NOW() ); $this->db->insert('mytable', $data); 这是因为CodeIgniter的ActiveRecord类自动转义input。 以下工作正常,通过调用set()并传递peratmeter FALSE,以便它不会转义NOW()。 $data = array( 'name' => $name , 'email' => $email, ); $this->db->set('time', 'NOW()', FALSE); $this->db->insert('mytable', $data); 不过,我的问题是,除此之外还有其他的方法吗? 例如,如果我可以以某种方式使用通过添加数据数组中的所有内容? 例如,像这样的东西: $data = array( 'name' => $name , 'email' => $email, 'time' => NOW(), FALSE );

解释$ CI =&get_instance();

查看codeigniter的源代码, 在其帮助函数中,我$CI =& get_instance();看到代码$CI =& get_instance(); 任何人都可以向我解释这个代码是如何工作的? 我得到它是返回一个引用到$超级对象,但get_instance()从哪里来?

制作codeigniter网站多语言的最好方法。 从lang数组中调用取决于lang会话?

我在研究时间和小时,但是我找不到任何清晰,有效的方法来做到这一点: 我有一个英文codeigniter基地网站,我现在必须添加一个波兰语言。 根据访客select,以两种语言制作我的网站的最佳方法是什么? 有没有什么办法可以为每种语言创build数组文件,并在视图文件中调用它们取决于来自langselect的Session? 我不想使用数据库。 欣赏帮助! 我已经没有了最后期限:/谢谢!

CodeIgniter – 在视图中访问$ configvariables

我经常需要在视图中访问$configvariables。 我知道我可以将它们从控制器传递到load->view() 。 但是明确地做到这一点似乎过分了。 是否有某种方法或窍门从CI视图访问$configvariables,而不会打扰带有备用代码的控制器?

如何在codeigniter模型中打印SQL语句

我在我的模型中有一个sql语句, 我然后说 $query = $this->db->query($sql, array(fields, fields1); if ($query) { return true: } else { echo "failed"; return false; } 我的查询总是失败,我如何让PHP打印准确的SQL语句被发送到我的数据库? 并显示在我的PHP视图,页面上

在PHP中处理PUT / DELETE参数

我正在为CodeIgniter的REST客户端库工作 ,我正在努力解决如何在PHP中发送PUT和DELETE参数。 在一些地方,我看到人们使用这些选项: $this->option(CURLOPT_PUT, TRUE); $this->option(CURLOPT_POSTFIELDS, $params); 令人讨厌的是,这似乎什么都不做。 这是设置PUT参数的正确方法吗? 如果是这样,我该如何设置DELETE参数? $ this-> option()是我的库的一部分,它只需构build一个CURLOPT_XX常量数组,并在执行构build的cURL请求时将它们发送到curl_setopt_array()。 我正在尝试使用下面的代码读取PUT和DELETE参数: case 'put': // Set up out PUT variables parse_str(file_get_contents('php://input'), $this->_put_args); break; case 'delete': // Set up out PUT variables parse_str(file_get_contents('php://input'), $this->_delete_args); break; 这里有两个select,我用错误的方法来解决这个问题,或者在我的库中有一个错误。 如果你能让我知道这是否应该在理论上工作,我可以锤掉debugging,直到我解决它。 我不想浪费更多的时间在一个根本上错误的方法上。

从框架走向无框架

我已经用PHP开发了大约8年的业余爱好了。 在2009年,我select了codeigniter,从那以后,我没有设法开发一个单一的项目。 我发现它使我慢下来试图找出如何修改它,以我想要的方式工作,如果我在纯PHP中工作,我会知道,或者我将能够快速find一个片段。 我试过CodeIgniter,Kohana和Symfony。 我喜欢易用性(而且我也开始使用教条作为一个ORM,它极大地加快了我的数据库工作),但是我发现项目花费了3-4倍于纯PHP的时间。 当我找不到解决scheme来解决我之前在纯PHP中解决的问题时,我感到无聊和沮丧。 有没有人从使用框架回到没有框架的方法。 有没有什么像一个基本的安全框架(防止XSS,过滤张贴的数据,提供清洁function用于数据库)? 我认为像这样的东西比我们的全面的框架更有利于我。 我认为学习使用框架已经教会了我很多,但我更乐意使用自己的代码。

PHP_SELF与PATH_INFO对比SCRIPT_NAME与REQUEST_URI

我正在CodeIgniter中构build一个PHP应用程序。 CodeIgniter发送所有请求到主控制器: index.php 。 但是,我不喜欢在URI中看到index.php 。 例如, http://www.example.com/faq/whatever将路由到http://www.example.com/index.php/faq/whatever 。 我需要一个可靠的方法让脚本知道它的地址是什么,所以它会知道如何处理导航。 我已经使用mod_rewrite ,根据CodeIgniter文档。 规则如下: RewriteEngine on RewriteCond $1 !^(images|inc|favicon\.ico|index\.php|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L] 通常情况下,我只是检查php_self ,但在这种情况下,它总是index.php 。 我可以从REQUEST_URI , PATH_INFO等得到它,但我正在试图决定哪一个最可靠。 有谁知道(或知道在哪里可以find) PHP_SELF , PATH_INFO , SCRIPT_NAME和REQUEST_URI之间的真正区别吗? 谢谢你的帮助! 注意 :我不得不添加空格,因为我们看到了下划线,并且由于某种原因使它变为斜体。 更新 :修复了空格。

如何使用CodeIgniter获取Controller,Action和URL信息

我有这些url: http://backend.domain.com/system/setting/edit/12 http://backend.domain.com/product/edit/1 如何从这些url获取控制器名称,操作名称。 我是codeigniter新手。 有没有任何帮助function来获得这个信息 例如: $params = helper_function( current_url() ) $params变成类似的东西 array ( 'controller' => 'system/settings', 'action' => 'edit', '…'=>'…' )