【发布时间】:2013-04-30 15:00:59
【问题描述】:
我有一个简单的 mysqli 查询,当我将 where 条件设置为如下代码 (option='title') 之类的字符串时,它无法运行,但是如果我使用整数代替 (id=1),它就可以工作!
代码如下:
$db_name = "gp";
$db_username = "root";
$db_pass = "";
$db_host = "localhost";
$mysqli = new mysqli($db_host, $db_username, $db_pass, $db_name);
mysqli_report(MYSQLI_REPORT_ERROR);
if($sql_title = $mysqli->query("SELECT value FROM options WHERE option='title' LIMIT 1")){
if($sql_title->num_rows > 0){
$row_title = $sql_title->fetch_object();
$title = $row_title->value;
echo $title;
}
else
echo "No Title!";
}
else
echo $mysqli->error;
$mysqli->close();
我的数据库结构
--------------------------
| id | option | value |
--------------------------
| 1 | title | hello |
| 2 | image | logo.jpg |
错误 SCREAM:忽略错误抑制 ( ! ) 警告:mysqli::query(): (42000/1064): 您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 9 行的 C:\wamp\www\test.php 的第 1 行的 'option='title' LIMIT 1' 附近使用正确的语法
【问题讨论】:
标签: mysqli where-clause fetch sql