codeigniter 相关问题

CodeIgniter是由EllisLab公司创建的开源PHP Web开发框架,它已被不列颠哥伦比亚理工学院采用。该框架实现了Model-View-Controller设计模式的修改版本。有关CodeIgniter类,方法,函数,语法和用法的问题,请使用此标记。

避免 CORS 在 codeigniter 中不起作用

我正在尝试在我的 codeigniter 应用程序中使用 AJAX 请求。 在我的 codeigniter 控制器功能的末尾,我添加了 公共一些函数(){ $this->output->set_header('访问控制-允许-

回答 2 投票 0

在每个控制器和操作之前进行 Codeigniter 身份验证

我正在使用 codeigniter 编写一个 Web 应用程序。 我想在用户访问该页面之前验证他们的权限。 实际上,除了登录页面之外,几乎所有控制器操作都需要...

回答 5 投票 0

将动态html表格数据保存到数据库codeigniter 3

以下是我的视图文件中的部分。 ... 以下是我的视图文件中的部分。 <div class="table-responsive"> <table class="table table-bordered" id="dynamic_field"> <tr> <td><input type="text" name="description[]" placeholder="Enter your Description" class="form-control name_list" required="" /></td> <td><input type="text" name="price[]" placeholder="Enter your Price" class="form-control name_list" required="" /></td> <td><button type="button" name="add" id="add" class="btn btn-success">Add More</button></td> </tr> </table> </div> 这是我的模型 $query_status = $this->db->insert('events', $register_data_array); $event_insert_id=$this->db->insert_id(); //insert the event ticket prices $price_description = $_POST['description']; $price = $_POST['price']; if ( ! empty($price_description) && ! empty($price) ) { foreach ($price_description as $key => $value) { $data['event_id'] = $event_insert_id; $data['price_description'] = $value; $data['price'] = $price[$key]; $this->db->insert('event_ticket_prices',$data[]); } $this->db->trans_complete(); return true; } insert_id是表单上静态信息的最后一个插入ID。这些可以毫无问题地保存,但对于动态故事我收到错误。 回答 您的插入位置错误。 移动 $query_status = $this->db->insert('events', $register_data_array); $event_insert_id=$this->db->insert_id(); 在foreach之后像这样 foreach ($price_description as $key => $value) { $query_status = $this->db->insert('events', $register_data_array); $event_insert_id=$this->db->insert_id(); $data['event_id'] = $event_insert_id; ... 这将解决您的问题。 注意:老实说,您的代码似乎编写效率低下,因为执行插入然后更新并不是最好的方法(您应该一次性插入所有数据),但我没有纠正它。此外,您应该始终在每次循环时清空 $data 数组。

回答 1 投票 0

如何将 CodeIgniter 与 FROM ( .... ) AS 一起使用

我的查询是 $这个->数据库->查询(" 选择表_A.* 从 ( SELECT MIN(table_A.table_A_id) AS table_A_id 从 ( SELECT table_A.table_b_id 来自

回答 1 投票 0

BUG 数据未正确插入到 codeigniter 3 中的数据库中

帮助我...我想创建一个洗衣程序,我使用codeigniter 3。当我在用户端编程时,我遇到了数据未插入数据库的问题。即使数据库名称,...

回答 1 投票 0

Codeigniter jQuery 文件上传意外令牌

我正在尝试实现本教程,我相信我已经完全按照教程中所述进行操作。但在下载过程似乎完成后我收到此错误。 错误语法E...

回答 1 投票 0

如何在Codeigniter中删除index.php

如何在 Windows 7 和 IIS 上删除 codeigniter 中的 index.php。 我在网上搜索了解决方案,但结果是基于 Apache 的重写模块,如果有人在 IIS 和 Windows 7 上工作过并且有过

回答 2 投票 0

CodeIgniter 帮助程序未加载

我试图使用这个助手创建一个国家/地区下拉列表。(https://github.com/EllisLab/CodeIgniter/wiki/helper-dropdown-country-code) 我创建了一个名为country_helper.php 的文件,其中包含 h...

回答 4 投票 0

php 在 csv 中写入希伯来语/UTF-8

嗨,我正在尝试编写一个包含希伯来语文本的 CSV。它写的是一些符号,而不是希伯来语文本。下面是我的 PHP 代码。 您好,我正在尝试编写一个包含希伯来语文本的 CSV。它写的是一些符号,而不是希伯来语文本。以下是我的 PHP 代码。 <?php $list = array ( array('שלטל', 'שלטל', 'שלטל', 'שלטל'), array('123', '456', '789'), array('"שלטל"', '"שלטל"') ); $fp = fopen('file.csv', 'w'); //fputs($fp, $bom =( chr(0xEF) . chr(0xBB) . chr(0xBF) )); foreach ($list as $fields) { fputcsv($fp, $fields); } fclose($fp); ?> 我检查了互联网并添加了“fputs($fp, $bom =( chr(0xEF) . chr(0xBB) . chr(0xBF) ))”,但没有成功。有人能帮我吗。 以下是我得到的输出。 刚刚运行了你的代码。文本编码正确,生成的 csv 有效。在支持希伯来语文本的文本编辑器中打开 CSV 将正确显示。要打开包含希伯来语的 CSV,您需要按照建议的说明进行操作此处 更新: 事实证明 MS 使用 UTF-16,而不仅仅是它使用 UTF-16LE(小端)。为了正确打开 MS CSV,您需要 UTF-16LE 编码文本、制表符分隔文件。 $list = array ( array('שלטל', 'שלטל', 'שלטל', 'שלטל'), array('123', '456', '789'), array('"שלטל"', '"שלטל"') ); $fp = fopen('file.csv', 'w'); //UTF-16LE BOM fputs($fp, chr(0xFF) . chr(0xFE)); foreach ($list as $fields) { $out = ''; foreach ($fields as $k => $v){ $fields[$k] = mb_convert_encoding($v, 'UTF-16LE', 'UTF-8'); } // UTF-16LE tab $out = implode(chr(0x09).chr(0x00), $fields); // UTF-16LE new line fputs($fp, $out.chr(0x0A).chr(0x00)); } fclose($fp); 上面的代码可以工作,但不确定其效率。 我想我以前遇到过这种情况,有时某些版本的 Excel 没有显示正确的 utf8 字符/字体。但文件本身已经有utf8了。 尝试在 Notepad++ 中打开 csv,看看它是否是 utf8-bom 以及是否显示 utf8 字符 试试这个: $data = "שם פרטי,שם משפחה,עיר\na,b,c\n1,2,3"; // need to use " for \n file_put_contents("myexcel.csv","\xEF\xBB\xBF"); // BOM with UTF-8 to csv file_put_contents("myexcel.csv",$data,FILE_APPEND); // add more data 希望有帮助。

回答 3 投票 0

在codeigniter中上传文件

尝试将上传的文件移动到最终目的地时遇到问题 无法使用其上传类在 codeigniter 中上传文件,上传目录也存在, 是...

回答 2 投票 0

有什么方法可以删除CodeIgniter4中的主文件夹及其子文件夹吗?

我想删除主文件夹以及其中的所有文件和子文件夹。我尝试了一个代码块,它使用 glob() 迭代所有文件,然后调用 rmdir() 删除主折叠...

回答 1 投票 0

CodeIgniter 路由和 404 自定义错误

我使用CodeIgniter。 我使用routes.php 文件根据url 的结构将某些url 路由到不同的文件。一切都运转良好。 然而,几个月前,我想我会......

回答 1 投票 0

我尝试使用bootstrap动态获取owl carousel的输出,但在codeigniter框架3.0.1版本中没有获得所需的输出

这就是我想在滑动时显示为滑块的内容,两行相应地向左或向右移动 ABC ABC <> 但我得到的在下面给出 ABC <> 当我...

回答 1 投票 0

致命错误:找不到类“CI_Controller”

当我尝试访问 xampp 服务器的本地主机时,会出现如下错误: 致命错误:找不到类“CI_Controller” C:\xampp\htdocs\系统

回答 0 投票 0

net::ERR_ABORTED 403(禁止)错误

我是 codeigniter 的新手,我面临一些问题。我使用核心 php 创建了一个商店定位器。它工作得很好。但我想将代码嵌入到 codeigniter 中。我复制了文件,当我...

回答 1 投票 0

使用 Laravel Mix 时移动公共文件夹时出现问题:我收到 404 错误

使用 Laravel Mix 运行项目时,我收到 404 并且无法访问页面。 我安装了composer 我没有创建该项目,它以前有这样的结构。 主要的 -核 -应用程序 -溃败...

回答 1 投票 0

路线不工作codeigniter

当我将welcome设置为默认控制器时,路由不起作用,默认控制器显示错误404,然后使用welcome控制器定义的所有路由都工作,但我的其他路由和url...

回答 3 投票 0

DataTable(服务器端)Ajax 使用 CodeIgniter4 错误 DataTable 未显示

所以我的任务是使用 codeigniter 4 制作一个 DataTable,并在互联网上浏览如何做到这一点,我设法在 youtube 上找到一个教程并遵循每个步骤,但出于某些原因...

回答 1 投票 0

如何在 php 中动态添加多个 WHERE 子句 [已关闭]

我有五个输入字段,即技能、地点、公司、经验和薪水。根据用户的要求,我将从数据库中获取值。我的问题是,如何使用where条件动态...

回答 2 投票 0

Codeigniter 将数组插入数据库

我在 Codeigniter 中创建了一个表单,其中包含一个使用 JavaScript 动态复制的电话号码字段。所以基本上我可以有一个或多个这样的字段。 我在 Codeigniter 中创建了一个表单,其中包含一个使用 JavaScript 动态复制的电话号码字段。所以基本上我可以有一个或多个这样的字段。 <input name="phone[]" value=""type="text"> <input name="phone[]" value=""type="text"> 然后在我的控制器中我有 $form_data = array( 'first_name' => $this->input->post('first_name'), 'last_name' => $this->input->post('last_name'), 'phone' => $this->input->post('phone[]') ); 然后我将其保存到我的数据库中 function SaveForm($form_data) { $this->db->insert('customers', $form_data); if ($this->db->affected_rows() == '1') { return TRUE; } return FALSE; } 但显然“电话”的代码是错误的,我只是不知道如何正确执行此操作。 您无法将数组保存到数据库中。您可以使用 implode() 将其转换为字符串,然后在需要时使用 explode() 将其转换回数组。就像下面这样 $phone=implode(',',$this->input->post('phone')); $form_data = array( 'first_name' => $this->input->post('first_name'), 'last_name' => $this->input->post('last_name'), 'phone' => $phone ); 或 您可以将其转换为 json 字符串,并在需要时转换回数组,如下所示: $phone = json_encode($this->input->post('phone')); 转换回数组 $phone = json_decode($phone, TRUE); 按如下方式修改你的函数,它将像魅力一样工作: function SaveForm($form_data) { $batch_data = []; foreach ($form_data as $data) { $batch_data[] = [ 'first_name' => $data['first_name'], 'last_name' => $data['last_name'], 'phone' => $data['phone'] ]; } $this->db->insert_batch('customers', $batch_data); return $this->db->affected_rows() > 0; } 在控制器中 $phone = $_POST['phone'];//this will store data as array. Check image 02 $form_data = array( 'first_name' => $this->input->post('first_name'), 'last_name' => $this->input->post('last_name'), 'phone' => $phone,//some times it works with '$phone' ); 在模型中 function SaveForm($form_data) { $this->db->insert('customers', $form_data); if ($this->db->affected_rows() == '1') { return TRUE; } else { return FALSE; } } 已测试 图片01(我的表格) 图片02(提交后) mysql没有任何数组数据类型。所以我们不能将数组直接存储到mysql数据库中。 为此,我们必须首先使用 php serialize() 函数将数组转换为字符串,然后将其保存到 mysql 数据库中。 例如:将数组存储在数据库中的php代码 $array = array("foo", "bar", "hello", "world"); $conn=mysql_connect('localhost', 'mysql_user', 'mysql_password'); mysql_select_db("mysql_db",$conn); $array_string=mysql_escape_string(serialize($array)); 从数据库检索数组 $conn=mysql_connect('localhost', 'mysql_user', 'mysql_password'); mysql_select_db("mysql_db",$conn); $q=mysql_query("select column from table",$conn); while($rs=mysql_fetch_assoc($q)) { $array= unserialize($rs['column']); print_r($array); } 要将数组插入到数据库,请在 codeigniter 控制器中使用此程序=> $inputdata=$this->input->post(); $phone=array($inputdata['phone']); foreach($phone as $arr) { $phoneNo=$arr; $f=count($phoneNo); for($i=0;$i<$f;$i++) { $arre=[ 'phone'=>$phoneNo[$i], ]; $insertB= $this->user_model->userdata($arre); } } public function add_theme_pages(){ $page_name = $this->input->post('page'); $page_img = $this->input->post('page_img'); for($i=0; $i < count($page_name); $i++){ $pages_data = array( 'theme_id' => $this->input->post('theme_id'), 'theme_page_name' => $page_name[$i], 'theme_page_img' => $page_img[$i] ); if($this->backendM->add_theme_pages($pages_data)){ $this->session->set_flashdata('message', 'Theme Added Successfully !'); $this->session->set_flashdata('message_class', 'green'); $this->create_template(); }else{ $this->create_template(); } } }

回答 6 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.