Php 获取sql记录
当我运行这段代码时,它返回主题finePhp 获取sql记录,php,mysql,sql,Php,Mysql,Sql,当我运行这段代码时,它返回主题fine $query = mysql_query("SELECT topic FROM question WHERE id = '$id'"); if(mysql_num_rows($query) > 0) { $row = mysql_fetch_array($query) or die(mysql_error()); $topic = $row['topic']; } 但是当我把它改成这个的时候,它根本
$query = mysql_query("SELECT topic
FROM question
WHERE id = '$id'");
if(mysql_num_rows($query) > 0) {
$row = mysql_fetch_array($query) or die(mysql_error());
$topic = $row['topic'];
}
但是当我把它改成这个的时候,它根本就不会运行。为什么会这样
$query = mysql_query("SELECT topic, lock
FROM question
WHERE id = '$id'");
if(mysql_num_rows($query) > 0) {
$row = mysql_fetch_array($query) or die(mysql_error());
$topic = $row['topic'];
$lockedThread = $row['lock'];
echo "here: " . $lockedThread;
}
确保
lock
不是MySQL关键字(保留字),您可能需要在字段列表中反勾选它(`lock`
):
SELECT `topic`, `lock`
...
它到底是如何运行的?您是否收到了错误消息?另外,您正在将
$id
插入到查询中,而不是将其作为安全参数传递;你确定你有锁
列吗?mysql发生错误?@droidus:$id
是一个变量。您不会显示它是如何填充的,但如果它来自用户/网页,则您将其放入开放的SQL代码中,从而允许恶棍使用SQL注入攻击。除非你是那个被认为不安全的人。我不相信这是一个关键词。我怎么确定?哇!后面的滴答声响了!为什么?它是保留的