我正在尝试从URL中的ID中提取数据库中的数据。
基本上有人点击了类别链接。然后类别名称进入URL。因此,点击“操作”类别时,网址会如下所示:http://localhost:8888/test/category.php?id=action
然后我想抓住数据库中与URL中的类别相等的所有内容 - 所以抓住数据库中所有“action”项目,这些项目位于名为“category”的列中
以下是我正在处理的PHP代码。我收到此错误:
There was an error running the query [Unknown column 'action' in 'where clause']
PHP代码:
<?php
$db = new mysqli('localhost', 'root', 'root', 'test');
if($db->connect_errno > 0){
die('Unable to connect to database [' . $db->connect_error . ']');
}
$id = mysql_real_escape_string($_GET['id']);
$sql = <<<SQL
SELECT *
FROM `games_db`
WHERE `category` = ($id)
SQL;
if(!$result = $db->query($sql)){
die('There was an error running the query [' . $db->error . ']');
}
while($row = $result->fetch_assoc()){
echo '<h2>' . $row['title'] . '</h2>' . ' ' . $row['description'] . '<br /><br />';
}
echo 'Total results: ' . $result->num_rows;
// Free result set
mysqli_free_result($result);
mysqli_close($db);
?>
答案 0 :(得分:1)
您正在将MySQL函数与form.onsubmit = function() {
return AddComment(place.place_id);
};
混合使用,该函数不适用于任何其他API而非其自身。
mysql_real_escape_string()
等效mysqli_
,这需要数据库连接。然后引用查询中的mysqli_real_escape_string()
变量,而不是使用括号。
$id
$id = mysqli_real_escape_string($db, $_GET['id']);
$sql = <<<SQL
SELECT *
FROM `games_db`
WHERE `category` = '$id'
SQL;
也可以。参考(S):