0

例如,我正在尝试创建一个模板,该模板根据 url 变量 ?id=1 从数据库中获取一行数据。当访问 http://www.example.com/template.php?id=1时,我想显示该特定行中的所有信息,例如标题。

目前,我通过查看 php.net 并对其进行了一些处理。我对如何解决这个问题一无所知,因为我是 PHP 新手并且没有太多经验:S。

$result = mysql_query("SELECT id,title FROM table WHERE id = urldecode( $_GET['id']        ) ");
if (!$result) {
echo 'Could not run query: ' . mysql_error();
exit;
}
$row = mysql_fetch_row($result);

echo $row[0];
echo $row[1];

希望这不是太宽泛。

4

1 回答 1

1

首先,不要运行简单的字符串查询,而是运行安全的数据库层,例如pdo。其次,您的代码或多或少还可以。我会这样做:

$id = $_GET['id'];
$query = mysql_query("SELECT id,title FROM table WHERE id = $id");

如果你把一个变量放在“$id”字符串里面,它的值就会放在里面。如果你把它放在 '$id' 字符串中,它不会。这是你想要的吗?

编辑:顺便说一句,没有基于 URL 的东西,有查询字符串。您id从查询字符串中获取变量。

于 2013-02-22T19:50:42.087 回答