问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

PHP CI框架修改数据的方法

发布网友 发布时间:2022-04-30 02:25

我来回答

2个回答

懂视网 时间:2022-04-30 06:47

= "SELECT * FROM some_table WHERE id = ? AND status = ? AND author = ?"; $this->db->query($sql, array(3, ‘live‘, ‘Rick‘));

上面语句先定义好sql操作,然后进行查询,这里包含的所谓“封装查询”是指,在sql语句中一些参量先不定义,用?替代,然后再调用query方法时在第二参数array中添加依次对应的参量。

  

query() 函数以object(对象)的形式返回一个数据库结果集. 当使用 "read" 模式来运行查询时, 你可以使用“显示你的结果集”来显示查询结果; 当使用 "write" 模式来运行查询时, 将会仅根据执行的成功或失败来返回 TRUE 或 FALSE. 当你需要将返回的结果赋值给一个自定义变量的时候, 你可以这样操作:

$query = $this->db->query(‘YOUR QUERY HERE‘);

然后可以使用 $query->result(),$query->row()等方法取得查询的结果。详见CI手册。

 

 

下面举一个项目中遇到的例子:

$sql = "update al set tadl_CorrectState = 0 , tadl_noPunchCardResult= ‘‘ 
   from t_ttm_vacationinfo vi 
   inner join T_Employee te on te.EmpUID = vi.vi_empuid 
   inner join workAttendance.dbo.t_Attendance_log al on al.tadl_salarysn = te.SalarySN 
   and CAST(al.tadl_date as DATE) between CAST(vi.vi_startdate as DATE) and CAST(vi.vi_enddate as DATE) 
   where vi.vi_uid = ? ";
$status3 = $this->db->query( $sql , array( $et_uid ) );

里面本质与上面简单例子一致,只是包含了更多的sql语句的特性,(数据库为sql server) 举例如下:

1. 别名。sql提供别名的特性,许多时候我们给表起名字的时候由于要良好的区分表以及彰显表的内容一般会起的比较复杂,例如上面这句sql中的 t_ttm_vacationinfo可想而知代表的是请假相关的信息,但由于名字较长,如果在sal语句中一直使用本名,会导致sql冗长,所以有了上面的“ t_ttm_vacationinfo vi”,意思即为别名。

2.联结。sql提供连接操作,包括inner join, left join, right join 其中inner join表示两个表需要至少包含一个匹配才可以返回相关行。如上例中采用了三个表之间进行联结,联结时用“on”关键字,声明了应该具有的匹配字段。

3. CAST函数。CAST()用于将某种数据类型的表达式显式转换为另一种数据类型。如上例中转换成日期格式的。

 

php的CI框架相关数据库操作

标签:

热心网友 时间:2022-04-30 03:55

CI框架下的PHP增删改查总结:
controllers下的 cquery.php文件
[php] view plain copy
<?php

class CQuery extends Controller {

//构造函数
function CQuery() {
parent::Controller();
// $this->load->database();

}

function index() {
//调用model 其中train为外层文件夹 MQuery为model名称 queryList为重命名
$this->load->model('train/MQuery','queryList');
//获得返回的结果集 这里确定调用model中的哪个方法
$result = $this->queryList->queryList();
//将结果集赋给res
$this->smarty->assign('res',$result);
//跳转到显示页面
$this->smarty->view('train/vquery.tpl');
}

//进入新增页面
function addPage() {
$this->smarty->view('train/addPage.tpl');
}

//新增
function add() {
//获得前台数据
//用户名
$memberName = $this->input->post('memberName');
//密码
$password = $this->input->post('password');
//真实姓名
$userRealName = $this->input->post('userRealName');
//性别
$sex = $this->input->post('sex');
//出生日期
$bornDay = $this->input->post('bornDay');
//e_mail
$eMail = $this->input->post('eMail');
//密码问题
$question = $this->input->post('question');
//密码答案
$answer = $this->input->post('answer');
//调用model
$this->load->model('train/MQuery','addRecord');
//向model中的addRecord传值
$result = $this->addRecord->addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer);
//判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是""
if ($result) {
$this->index();
} else {
echo "add failed.";
}
}
//删除
function deletePage() {
//获得ID
$deleteID = $this->uri->segment(4);
//调用model
$this->load->model('train/MQuery','delRecord');
//将值传入到model的delRecord方法中
$result = $this->delRecord->delRecord($deleteID);
//判断返回值
if ($result) {
$this->index();
} else {
echo "delect failed.";
}
}
//修改先查询
function changePage() {
$changeID = $this->uri->segment(4);
$this->load->model('train/MQuery','changeRecord');
$result = $this->changeRecord->changeRecord($changeID);
//将结果集赋给res
$this->smarty->assign('res',$result);

//跳转到显示页面
$this->smarty->view('train/changePage.tpl');
}
//修改
function change() {
//获得前台数据
//ID
$ID = $this->input->post('id');
//用户名
$memberName = $this->input->post('memberName');
//密码
$password = $this->input->post('password');
//真实姓名
$userRealName = $this->input->post('userRealName');
//性别
$sex = $this->input->post('sex');
//出生日期
$bornDay = $this->input->post('bornDay');
//e_mail
$eMail = $this->input->post('eMail');
//密码问题
$question = $this->input->post('question');
//密码答案
$answer = $this->input->post('answer');
//调用model
$this->load->model('train/MQuery','change');
//向model中的change传值
$result = $this->change->change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer);
//判断返回的结果,如果返回true,则调用本页的index方法,不要写 $result == false 因为返回的值未必是false 也有可能是""
if ($result) {
$this->index();
} else {
echo "change failed.";
}
}
}
models中的 mquery.php 文件
[php] view plain copy
<?php

class MQuery extends Model {
//构造函数
function MQuery() {
parent::Model();
//连接数据库
$this->load->database();
}

//查询列表
function queryList() {
//防止select出的数据存在乱码问题
//mysql_query("SET NAMES GBK");
//SQL语句
$sql = "SELECT ID,member_name,sex,e_mail FROM user_info_t";
//执行SQL
$rs = $this->db->query($sql);
//将查询结果放入到结果集中
$result = $rs->result();
//关闭数据库
$this->db->close();
//将结果集返回
return $result;
}

//新增
function addRecord($memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) {
//防止select出的数据存在乱码问题
//mysql_query("SET NAMES GBK");
//SQL语句
$sql = "INSERT INTO user_info_t (member_name,password,user_real_name,sex,born_day,e_mail,question,answer) " .
"VALUES ('$memberName','$password','$userRealName','$sex','$bornDay','$eMail','$question','$answer')";
//执行SQL
$result = $this->db->query($sql);
//关闭数据库
$this->db->close();
//返回值
return $result;
}

//删除
function delRecord($deleteID) {
//防止select出的数据存在乱码问题
//mysql_query("SET NAMES GBK");
$sql = "DELETE FROM user_info_t WHERE ID = $deleteID";
$result = $this->db->query($sql);
$this->db->close();
return $result;
}

//修改前查询
function changeRecord($changeID) {
//防止select出的数据存在乱码问题
//mysql_query("SET NAMES GBK");
$sql = "SELECT ID,member_name,password,user_real_name,sex,born_day,e_mail,question,answer FROM user_info_t WHERE ID = $changeID";
//执行SQL
$rs = $this->db->query($sql);
$result = $rs->row();//$result = $rs[0]
//关闭数据库
$this->db->close();
//将结果集返回
return $result;
}

//修改
function change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) {
//防止select出的数据存在乱码问题
//mysql_query("SET NAMES GBK");
//SQL语句
$sql = "update user_info_t set member_name = '$memberName',password = '$password', user_real_name = '$userRealName'," .
"sex = '$sex',born_day = '$bornDay',e_mail = '$eMail',question = '$question',answer = '$answer'" .
"where ID = $ID";
//执行SQL
$result = $this->db->query($sql);
//关闭数据库
$this->db->close();
//返回值
return $result;
}
}

views 下的 addPage.tpl文件

[php] view plain copy
<html>
<head>
</head>
<body><form action="{{site_url url='train/cquery/add'}}" method="post">
<table border='1'>

<tr>
<td>用户名</td>
<td><input type="text" class="text" name="memberName" id="memberName"/></td>
</tr>
<tr>
<td>密码</td>
<td><input type="text" class="text" name="password" id="password"/></td>
</tr>
<tr>
<td>真实姓名</td>
<td><input type="text" class="text" name="userRealName" id="userRealName"/></td>
</tr>
<tr>
<td>性别</td>
<td><input type="text" class="text" name="sex" id="sex"/></td>
</tr>
<tr>
<td>出生日期</td>
<td><input type="text" class="text" name="bornDay" id="bornDay"/></td>
</tr>
<tr>
<td>e_mail</td>
<td><input type="text" class="text" name="eMail" id="eMail"/></td>
</tr>
<tr>
<td>密码问题</td>
<td><input type="text" class="text" name="question" id="question"/></td>
</tr>
<tr>
<td>密码答案</td>
<td><input type="text" class="text" name="answer" id="answer"/></td>
</tr>

</table>
<table>
<tr>
<td><input type="submit" class="button" name="OK" value="提交" />
</td>
</tr>
</table></form>
</body>
</html>
PHP CI框架修改数据的方法

$result = $rs-&gt;row();//$result = $rs[0] //关闭数据库 $this-&gt;db-&gt;close(); //将结果集返回 return $result; } //修改 function change($ID,$memberName,$password,$userRealName,$sex,$bornDay,$eMail,$question,$answer) { //防止select出的数据存在乱码问题 //mysql_query("...

非结构化数据如何可视化呈现?

通常情况下,我们会按照结构模型把系统产生的数据分为三种类型:结构化数据、半结构化数据和非结构化数据。结构化数据,即行数据,是存储在数据库里,可以用二维表结构来逻辑表达实现的数据。最常见的就是数字数据和文本数据,它们可以某种标准...

在CI框架写个修改页面 怎么才能在修改页面中输出你想修改的值啊?代码是...

控制器里 public function edit_pages($id= FALSE){ this-&gt;load-&gt;model('admin_model')data['pages']=$this-&gt;admin_model-&gt;get_pages($id);this-&gt;load-&gt;view('default/top',$data);this-&gt;load-&gt;view('default/edit_page',$data);} 模型里 public function get_pages($id = false){ m...

CI 框架$route['default_controller'] = "welcome";怎么修改?我访问所 ...

有两种方法:直接修改$route['default_controller'] = "你自己想要访问的控制器";修改在welcome.php中的index方法:redirect('想要跳转的控制器')。

在ci的模板中如何使用自定义的函数?

application/config/config.php:配置全局参数 system/core/URI.php:解析url参数 system/core/Router.php:检测路由配置,解析 HTTP 请求,以确定谁来处理 system/core/Output.php:检查是否有缓存文件,如果存在则直接输出内容。system/core/Input.php:过滤 HTTP 请求和任何用户提交的数据 system/core/Lon...

MySQL在CI框架中的初始化ci里面初始化mysql

一、CI框架数据库配置文件 在CI框架的application/config目录下,有一个文件名为database.php的配置文件,默认情况下CI会使用该文件初始化数据库连接。打开该文件后,可以发现有一些配置项,如下:db[‘default’] = array(‘dsn’ =&gt; ”,‘hostname’ ...

php的CI框架,如何使用session

1是php的原始的session使用方法,这个很简单,$_SESSION['name']="name",然后在需要的地方显示:echo $_SESSION['name'];2是codeigniter这个框架的一个方法:下面就详细讲解如何使用这个有点点复杂的方法:首先,在\ci\application\config下面的config.php文件中找到:$config['encryption_key'] = '';...

php 项目 如何include CI框架里的东西

先include system的主文件,CI下都有INDEX的文件,根据它上边的做好了,把CORE include之后和在框架内试用的一样了。CI是我第一个学习的框架,现在都差不多忘完了。转了好多个框架之后,现在只用YII做站了。没得说好用

CI框架如何删除URL中index.php的终极解决方案

你可以很容易的通过 .htaccess 文件来设置一些简单的规则删除它。下面是一个例子,使用“negative”方法将非指定内容进行重定向:RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt)RewriteRule ^(.*)$ /index.php/$1 [L]注意:如果你的项目不在根目录请把上面这一句改为:...

求PHP CI框架大神解决一个分页问题

'base_url'] = site_url().'news/';$offset = 15;$config['per_page'] = $offset;$config['uri_segment'] = 3;$curset = empty($page)?0:$page-1;if($curset &lt; 0){$curset = 0;}……offset = 15; 就是导致问题的原因吧,没有完整的代码,无法找到真正的问题,骚瑞。

用php的CI框架怎么写登录和注册

第一步:login.php //登陆方法 public function login(){ //如果用户名和密码为空,则返回登陆页面 if(empty($_POST['username']) || empty($_POST['password'])){ data['verifycode'] = rand(1000,9999);//生成一个四位数字的验证码 //将验证码放入session中,注意:参数是数组的格式 thi...

大数据5大框架 大数据框架有哪些 大数据框架 大数据分析框架 大数据计算框架 python大数据框架 框架修改器下载 gg修改器框架使用教程 免root修改器框架
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
3月坐高铁车上开的是冷气还是暖气2022 高铁里的暖气提供到几月份-铁路... 2022新坐高铁文案短句 2022年12月16日坐高铁注意事项 2022元月一号坐高铁还需取票吗 通草水过夜能喝吗 中兴n600怎么把东西弄到记事本里 怎么让图片形式的文字弄到记事本里 有什么东西可以一下子把图片里的子弄到记事本或office里面 有什么东西可以一下子把图片里的子弄到记事本或office里面._百度... 海鲜熟了能过夜吃吗 在WINDOWS中可以检测电脑硬件的命令知多少 详细&#xFFFD;0&#xFFFD;3 一台台式电脑硬件有多少…分别是什么? 把电脑所有硬件种类列一下。知道多少写多少。谢谢 电脑的硬件和软件是什么,电脑分为哪几部分? 电脑配置清单+电脑硬件知多少导学案 电脑有几大硬件?价位一般是多少? 请告诉我一些电脑硬件知识,谢谢 电脑的硬件有多少个部件组成 电脑有多少硬件? 电脑硬件知识?? 电脑硬件知多少教学反思 日语的“出会”是什么意思? 一定会 ;可能会 ; 会的含义是 什么 “会”这个字的意思?“会神”的意思? 抑郁症睡眠不好 失眠,抑郁 睡不着觉,哪些药物可以简单直接有效 会什么意思?比如什么什么会 女孩17岁有抑郁症,夜里不睡觉看手机,在家走来走去啥原因?谢谢 如何把忘记手机密码的TCL手机刷机? 晚上睡眠不好精神抑郁怎么办? 上下页边距3.7厘米等于多少磅 wold文档上下页边距为70磅是什么意思 Excel 页边距怎么从厘米变成磅了,怎么变回来 有木有招聘服务员的招聘信息 旁边附近有没有招聘服务服务员导购员 在重庆北站附近有没有招聘饭店服务员 的信息。包吃住的。钱多少无所谓的。 佛山招聘服务员招聘信息在哪找啊,我想找一个服务员的工作? wrod页边距磅和厘米 字体:正文:小四,上下页边距为2.54cm、左右页边距为2.6cm,字间距为标准,正文的行间距为固定值22磅。 word 上下左右页边距为2.8厘米,标题为二号宋体,正文为三号仿宋体,行距为28磅,这个在电脑上怎么弄啊, word里面行距22磅 页边距2·2·2·3(左) 家庭用电,选用漏电保护器和空气开关哪个好? 请问有什么cpu散热器argb风扇推荐下? ROG STRIX LC 360小白龙 ARGB质量好不好呢? 5p空调用空开好还是漏电保护控制好。 总开关是断路器。 ROG STRIX LC 360小白龙?ARGB 这款水冷怎么样? 路由器如何连机顶盒、电视机?电视机有hdmi插口。用什么数据线。 幼儿园教师节聚餐在一起作为一名副院长敬酒应该说点什么 数据库数据字典文档模板下载 权财小说txt全集免费下载