CodeIgniter 调用未定义的方法准备
CodeIgniter Call to undefined method prepare
我对 CI 框架还很陌生。我正在做一个项目,一切顺利,直到我尝试使用表单编辑数据库中的一行。我收到此错误
消息:调用未定义的方法 CI_DB_mysqli_driver::prepare()
这是我控制器中的代码。
public function edit($id) {
$alimente = $this->db->query('select alimente.id, alimente.name FROM alimente WHERE id = "' . $id . '" order by name desc')->result();
$content = $this->parser->parse('alimente/edit_alimente', array("ALIMENTE" => $alimente), true);
$TITLE = "Modifica";
$array = array('TITLE' => $TITLE, 'CONTENT' => $content);
$this->parser->parse('TEST', $array, false);
}
public function edit_done() {
$name = $this->input->post("name");
$id = $this->input->post("id");
$query = $this->db->prepare("update alimente set name = '" . $name . "' where id = '" . $id . "'")->result();
$query->execute($name, $id);
redirect("alimente");
这是我的视图文件
<form method="post" action="{SITE_URL}/alimente/edit_done">
<div class="form-group">
{ALIMENTE}
<label> Id aliment</label>
<input type="text" name="id" value= "{id}" readonly="true"class="form-control" />
<label> Nume aliment</label>
<input type="text" name="name" value= "{name}" class="form-control" />
<br>
{/ALIMENTE}
</div>
<input type="submit" value="Modifica" name=" modifica" class="btn btn-primary" />
</form>
如果我更改准备查询最终结果是一个布尔值但发生了编辑,我收到此错误消息
消息:调用成员函数 result() on boolean
由于 CodeIgniter 不支持准备语句,您可以像这样修改代码以使用 PDO 对象 运行 您的准备语句:
public function edit_done() {
$name = $this->input->post("name");
$id = $this->input->post("id");
$query = $this->db->conn_id->prepare('update alimente set name = ? where id = ?');
$query->execute($name, $id);
redirect("alimente");
我对 CI 框架还很陌生。我正在做一个项目,一切顺利,直到我尝试使用表单编辑数据库中的一行。我收到此错误
消息:调用未定义的方法 CI_DB_mysqli_driver::prepare()
这是我控制器中的代码。
public function edit($id) {
$alimente = $this->db->query('select alimente.id, alimente.name FROM alimente WHERE id = "' . $id . '" order by name desc')->result();
$content = $this->parser->parse('alimente/edit_alimente', array("ALIMENTE" => $alimente), true);
$TITLE = "Modifica";
$array = array('TITLE' => $TITLE, 'CONTENT' => $content);
$this->parser->parse('TEST', $array, false);
}
public function edit_done() {
$name = $this->input->post("name");
$id = $this->input->post("id");
$query = $this->db->prepare("update alimente set name = '" . $name . "' where id = '" . $id . "'")->result();
$query->execute($name, $id);
redirect("alimente");
这是我的视图文件
<form method="post" action="{SITE_URL}/alimente/edit_done">
<div class="form-group">
{ALIMENTE}
<label> Id aliment</label>
<input type="text" name="id" value= "{id}" readonly="true"class="form-control" />
<label> Nume aliment</label>
<input type="text" name="name" value= "{name}" class="form-control" />
<br>
{/ALIMENTE}
</div>
<input type="submit" value="Modifica" name=" modifica" class="btn btn-primary" />
</form>
如果我更改准备查询最终结果是一个布尔值但发生了编辑,我收到此错误消息
消息:调用成员函数 result() on boolean
由于 CodeIgniter 不支持准备语句,您可以像这样修改代码以使用 PDO 对象 运行 您的准备语句:
public function edit_done() {
$name = $this->input->post("name");
$id = $this->input->post("id");
$query = $this->db->conn_id->prepare('update alimente set name = ? where id = ?');
$query->execute($name, $id);
redirect("alimente");