-1

このコードを実行すると、トピックが正常に返されます...

$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;
    }
4

1 に答える 1

7

lockが MySQL キーワード (予約語) でないことを確認してください`lock`。フィールド リストでバッククォート ( )を付ける必要がある場合があります。

SELECT `topic`, `lock`
...

MySQL 5.6 の予約語

于 2012-04-13T17:32:13.230 に答える