尝试使用$ _GET从db表中显示行的信息

时间:2013-06-30 22:43:10

标签: php sql get

一般来说,我对php非常陌生,所以我发现其中一些可能看起来“愚蠢”,但请耐心等待。

我有一个与phpBB论坛集成的页面,因此它使用了他们的模板系统,所以我不需要在php页面中回显任何html。此外,每个页面都包含与数据库的连接,因此我无需进行任何连接。

在html页面上,我使用{NAME}和{AGE}之类的内容来提取信息,但我的问题在于php文件本身。我希望页面的URL具有类似“file.php?name = John”的内容,它将在数据库中显示“John”行中的数据。

这是我目前正在使用的代码。假设大部分内容都不是错误的开头,我在这段代码的第2行收到错误“Parse error:syntax error,unexpected T_STRING”。

$name = $_GET['name'];
$result = mysql_query(SELECT * FROM 'people' WHERE 'name' = $name);
while($row = $db->sql_fetchrow($result))
{
$template->assign_vars(array(
'NAME'          => $row['name'],
'AGE'           => $row['age'],
    ));
}

我正在使用一个名为“people”的表,当然还有两个名为“name”和“age”的列。如果有人能告诉我我的错误或者至少引导我朝着正确的方向前进,那将非常感激。

1 个答案:

答案 0 :(得分:0)

您缺少引号和一些安全性:

$name = mysql_real_escape_string($_GET['name']);
$result = mysql_query("SELECT * FROM `people` WHERE `name` = '$name'");

尽管尝试学习新代码的PDO或MySQLi,但它本质上更安全。