如何从我的数据库中获取发布数据 - 多次获取

时间:2013-11-19 12:59:19

标签: php sql

<?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的帖子。我有这些代码,我得到用户名,但当我尝试从帖子表中获取发布日期时,它不起作用。我想做什么

4 个答案:

答案 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
}