我试图从GET数据选择的MySql数据库中显示一个条目。PHP不显示来自MySQL数据库的结果
if (isset($_GET["id"])){
$id=$_GET["id"];
$result = getSelectedBlog($id);
while($row = mysqli_fetch_array($result))
{
extract($row);
?>
<div class="headline"><?php echo $headline ?></div>
<div class="subtitle"><?php echo $subTitle ?></div>
<div class="content"><?php echo $content ?></div>
<?php
}
这里是SQL语句:
function getSelectedBlog($id){
$con = mysqli_connect('localhost', 'root', '', 'michaelWebsite') or die('could not connect');
$sql = 'SELECT * FROM tblArticle WHERE tblArticle.articleID LIKE "$id"';
$result = mysqli_query($con, $sql) or die('entry does not exist.:' . mysqli_error($con));
return $result;
}
正如你所看到的,我传递获得的数据为$ id来返回结果的方法。但是没有任何东西正在退回目前有三个条目,如果我将SQL语句中的$ id更改为1,2或3,它将显示相应的数据,但它不会与$ id变量一起使用。
URL确实以正确的信息?id = 1结束。
请原谅,如果这是愚蠢的,我刚刚坚持了这个好几个小时了!
尝试增加'的var_dump($ ID)只评估;'的函数里面看看它是什么。 –
你的代码中有一个SQL注入漏洞 - 直接在查询中使用'$ _GET ['id']'。阅读[this](http://bobby-tables.com),然后再使用此代码进行更进一步的操作。 –
您正在使用mysqli_ *函数,就像它们是mysql_ *函数一样。尝试转义$ id,你的代码容易受到mysql注入的影响($ id来自$ _GET,没有被清理,并且被直接插入到查询中,你可以使用一个很好的mysql/mysqli/pdo&mysql教程。对于PDO和MySQL,祝你好运。 –