草庐IT

codeIgniter

全部标签

php - 使用 CodeIgniter 事件记录类时限制 SQL 连接

我正在获取产品列表。每个产品可能有一张或多张图片,我只想返回第一张图片。$this->db->select('p.product_id,p.product_namei.img_name,i.img_ext');$this->db->join('products_imagesi','i.product_id=p.product_id','left');$query=$this->db->get('productsp');有没有办法使用CI事件记录类将db->join限制为1条记录? 最佳答案 在调用$this->db->get('pr

php - 从 CodeIgniter 中每个页面所需的模型中检索数据的最佳方法是什么?

当用户登录到我的CodeIgniter应用程序时,我需要一个配置文件列表,他们必须在他们访问的每个页面的菜单中。而不是像这样在我的应用程序中的每个方法上调用模型函数:if($this->users_model->is_logged_in()){$data->profiles=$this->profiles_model->get_profiles();}$this->load->vars($data);有更好的方法吗?我也考虑过像这样扩展CI_Controller类的选项,但无法确定如何最好地将变量传递给需要该信息的实际方法。classMY_ControllerextendsCI_Con

php - Codeigniter 模型未插入值

这是我在CI中的第二个网络应用程序。我试图从表单中获取单个值(在提交时)并将其插入数据库。我有一个Controller“urlsubmission”:load->model('domaincheckmodel');$this->domaincheckmodel->verifyduplicates();}}?>模型(domaincheckmodel)-在数据库中搜索任何重复项:db->query($sql,array($this->db->escape_str($postedTLD)));//Querydb#CONDITIONif($endquery->num_rows()>0){$th

php - MySQL bool 类型

我真的很纠结如何处理这个。在过去的10年里,我一直忍受着这个问题,但我认为是时候决定处理这个问题的正确方法了。根据Internet,MySQL不支持native数据类型,这就是为什么每当我选择“BOOLEAN”时,我都会看到该列最终为tinyint(1)。将数据存储为具有1或0值的tinyint没有问题,但是我确实有一个问题,当我从数据库中使用此列选择许多行时,我得到一个字符串“1”或“0"而不是PHPnativebooltrue/false。PHP仍然可以将此变量作为bool值处理,因为它似乎自动知道每当我执行==0或==1或什至=='0'或=='1'时我想要它做什么,如果我真的感觉

php - 广度优先搜索方式的一般树遍历(无限)

我有一个树结构,其中每个节点都有5个子节点,并且不允许超过5个。我希望以广度优先搜索的方式遍历这棵树。现在我想使用广度优先搜索方式从选定的父节点计算空节点。例如如果给定的父节点为1,则函数必须返回节点4,因为它有可用的位置。如果给定的父节点是2,那么它必须返回节点7我为此使用PHP(codeigniter)+Mysql。我的Controllerpublicfunctionaddmember(){$current_node=$this->input->post('member');$empty_location=$this->tree_model->GetEmptyPositions($

php - 随机SQL记录同时排除特定记录

我有一个显示两部电影封面的CodeIgniterPHP应用程序。在它们旁边是一个“随机电影”按钮,该按钮使用AJAX将两部电影替换为一组新电影。您可以继续单击它,一遍又一遍,并看到它继续替换电影封面的图像。显示的前两个封面设置为默认值,并且在用户单击随机电影按钮后它们不应该显示。问题是这样的:单击随机电影按钮时,有时需要多次单击才能最终显示新封面。也就是说,同一个封面将连续多次返回。正在从略有不同的URL调用正在获取的两个不同封面,因此它们很少会同时中断。这让我知道它令人耳目一新,但该函数多次返回同一部电影。如果我直接访问通过AJAX调用的url,我永远不会看到这种情况发生,因为我使用

php - Codeigniter 2 $this->db->join 与 $this->db->update 一起使用

我刚刚意识到你不能使用:$this->db->join()与$this->db->update()似乎“join”是由codeigniter执行的,但在查询中没有使用,在更新基础表后看到:$this->db->last_query();我看到没有join。然后我尝试对联接表进行更新,认为联接只会在需要时使用,但我没有工作,并告诉我错误1054“where子句中的未知列XXX”。有没有办法强制使用codeigniter?我构建软件的方式,我真的不想自己构建查询的所有不同部分(连接、位置)和调用$this->db->query()。注意:我看到了这些链接:Codeigniteractive

mysql - 代码点火器 : how to avoid db query returns last statement as key value

我在codeigniter中查询结果之前执行了几个查询:$sql_drop_temptable="...blabla...";$sql_prepare="itcreatesatemporarytable;whereIsumuplater...";$sql_summe="selectsec_to_time(sum(time_to_sec(summands)))fromworkday;";$query=$this->db->query($sql_drop_temptable);$query=$this->db->query($sql_prepare);$query=$this->db->q

php - 在 Codeigniter 中记录一些数据到数据库

我有一个问题我有一个问卷网站,使用学生作为受访者来填写网站的事项。问题是,当将问卷结果中包含的数据发送到数据库时,数据并未记录在数据库中。这是我名为“jawab”的表,作为答案记录,列为:'NIS'作为学生证“ID_SOAL”作为问题ID学生回答“JAWABAN”|国家信息系统|ID_SOAL|JAWABAN||...|......|......|那张table(jawab)还是空的现在在我的Controller代码中命名为“soal”作为问题Controller:publicfunctionindex(){$data['title']="KriteriaRumahMasaDepany

php - 三张表使用 CI 连接

我必须加入三个表。我不是一个好的sql编写器。可以请某人帮助我使用连接来准备这个吗,分支机构branch_id|branch_name|branch_address1name1address1分支服务bs_id|branch_id|service_id111212314服务service_id|service_name1service12service23service34service4我需要像这样从分支表和与每个分支相关的service_names中选择*结果1|name1|address1|service1service2service4|我在搜索时发现了一个名为group_co