[英]Simple query and error on Codeigniter
我對CodeIgniter和Mysql有問題。 我收到一個非常簡單的查詢錯誤:
$o = "INSERT INTO usuarios (user, password) VALUES ('deesggsd', 'dsggd')";
$query = $this->db->query($o);
$this->db->query($query);
產生:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '1' at line 1
1
Filename: C:\wamp\www\newWeb\system\database\DB_driver.php
Line Number: 330
但是查詢實際上已執行; 該行出現在數據庫中。 我做錯了什么?
如果我在phpmyadmin上執行相同的查詢,一切正常。
謝謝!!!
你在做什么$query = $this->db->query($o);
正在執行查詢並將結果存儲到$query
變量中。 因此,您已經運行了一次INSERT
,這就是為什么它可以正確存儲到數據庫中的原因。
現在,當您嘗試運行$this->db->query($query);
您基本上是在嘗試使用結果(TRUE)作為查詢字符串來運行mysql過程。 這是引發錯誤的地方。 說得通?
嘗試這樣做:
$this->db->insert('usuarios', array(
'user' => 'deesggsd',
'password' => 'dsggd'
);
我建議研究Active Record以及一般情況下PHP和mysql之間的交互方式。 沒有冒犯,但這是初學者級別的錯誤。
您應該使用activer recored的示例,簡單易行,
那將解決您的問題
$values = array('user'=>'deesggsd', 'password'=> 'dsggd');
$this->db->insert('usuarios',$values)
http://ellislab.com/codeigniter/user-guide/database/active_record.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.