<?php
if ($username = $_GET['username'])
{
$sql = "SELECT * FROM posts WHERE username='$username'";
$q = $db->prepare($sql);
$q->execute();
while($q->fetch(PDO::FETCH_ASSOC))
{
echo "$username<br/>";
}
}
?>
各位大家好。我想如果前Baran的用户名只是获取baran的帖子。我有这些代码,我得到用户名,但当我尝试从帖子表中获取发布日期时,它不起作用。我想做什么
答案 0 :(得分:0)
我认为这是一个错字
if ($username = $_GET['username']) {// assingment
更改为:
if ($username == $_GET['username']) {//equal
使用preparedStatement来避免sql注入:
<?php
if ($username == $_GET['username']) {
$sql = "SELECT * FROM posts WHERE username = :user ";
$q = $db->prepare($sql);
$q->bindValue(':user', $username);
$q->execute();
while($row = $q->fetch(PDO::FETCH_ASSOC)) {
echo $row['username'] .'<br/>';
}
}
答案 1 :(得分:0)
if ($username == $_GET['username']) {
while($row = $q->fetchAll(PDO::FETCH_ASSOC))
{
echo $row['username'];
}
答案 2 :(得分:0)
您必须将$q->fetch
的结果分配给某个变量。请参阅fetch() documentation。
在您的示例中,您只需回显用作输入的值。
答案 3 :(得分:0)
如果您应该始终使用==
eg:if($i ==1)
{
something here
}
else
{
something else
}