在PHP MSQLI中为活动会话用户获取数据

时间:2020-03-16 18:16:44

标签: php mysql pdo

我是PHP新手,但可以在下面进行研究。如果我指定电子邮件地址,它将获取特定电子邮件地址的订单,但是我希望它选择活动会话用户的电子邮件地址并获取该用户的订单。我该如何解决?希望得到帮助。

<?php
require("db.php");
error_reporting(~E_NOTICE);
session_start();
$email = $_SESSION['email'];

    $stmt=$db->prepare("select * from user where email=email");
    $stmt->execute(array('email'=>$_SESSION['email']));
$row=$stmt->fetch(PDO::FETCH_ASSOC);
$count=$stmt->rowCount();
?>

<tbody>
 <?php
 $email = $_SESSION['email'];
$query=$db->query('select * from sellorder where email = "'.$_SESSION['email'].'"');
while($roww=$query->fetch(PDO::FETCH_ASSOC))
{
    ?>
   <tr>
   <td><?php echo '<span class="text-dark">'.$roww["orderno"].'</span>'; ?></td>
   <td><?php echo '<span class="text-dark">'.$roww["date"].'</span>'; ?></td>
   <td><?php echo '<span class="text-dark">'.$roww["btcvalue"].'</span>'; ?></td>
   <td>$<?php echo '<span class="text-dark">'.$roww["usdvalue"].'</span>'; ?></td>
   <td>₦<?php echo '<span class="text-dark">'.$roww["nairavalue"].'</span>'; ?></td>
   <td><?php echo '<span class="text-dark">'.$roww["accountno"].'</span>'; ?></td>
         <td><?php echo '<span class="text-success">'.$roww["status"].'</span>'; ?></td> 
 </tr>
   <?php
     }
 ?>
              </tbody>

1 个答案:

答案 0 :(得分:1)

您在第一个查询中没有正确使用占位符。您要查询email列等于email列的所有记录。应该是:

"select * from user where email=:email"

第二个根本没有占位符,这是一个巨大的错误。 始终使用占位符值

$stmt=$db->prepare('select * from sellorder where email = :email');
$stmt->execute(['email' => $_SESSION['email']]);

while($roww=$stmt->fetch(PDO::FETCH_ASSOC))
相关问题