1

我需要在我的 mysql 表中的“反馈”字段中显示我的页面上的回复数据。我希望每个用户每行存储一个不同的“反馈”响应,并在用户通过会话登录页面时获取。我已经建立了我的数据库,但发现很难形成 php 代码来查看我页面上的反馈...请有人帮忙../

       <?php
       session_start();

       if ($_SESSION['username'])
        {

       $con = mysqli_connect('localhost','root','');
       if (!$con)
        {
        die('Could not connect: ' . mysqli_error($con));
            }

        mysqli_select_db($con,"loginsession");
        $username = $_SESSION['username'];
        $sql="SELECT * FROM users WHERE username = $username";

        $result = mysqli_query($con,$sql);

        $feedback = mysql_query("SELECT feedback FROM users WHERE username='$username'");

        echo $feedback;


          }

       else 
    header("Location: index.php");  

      ?>
4

3 回答 3

6

$feedback 在这种情况下不是一个字符串,它是一个 mysql 资源。您需要使用以下内容单独获取每一行:

echo "<PRE>";
while ($row = mysql_fetch_assoc($feedback)) {
    print_r($row);
}

此外,您应该将 $username 放在 mysql_real_escape_string() 中,否则您的代码可能容易受到SQL 注入攻击

编辑:(免责声明)您使用的方法和我的建议非常过时,并且在 php5.5 中已被贬值,我建议您查看准备好的语句

于 2013-09-20T00:05:09.943 回答
1
$sql = mysql_query("SELECT feedback FROM users WHERE username='{$username}' LIMIT 1");
$feedback = mysql_fetch_assoc($sql);
echo $feedback[0];
于 2013-09-20T01:18:20.600 回答
-1
<?php
session_start();
if ($_SESSION['username'])
{
   $con = mysqli_connect('localhost','root','');
   if (!$con)
   {
        die('Could not connect: ' . mysqli_error($con));
   }
   mysqli_select_db($con,"loginsession");
   $username = $_SESSION['username'];
   $sql='SELECT feedback FROM users WHERE username = "'.$username.'"';
   $result = mysqli_query($con,$sql);
   while($row = mysqli_fetch_array($result))
   {
     echo $row['feedback'];
   } 
}
else 
  header("location: index.php");  
?>
于 2017-01-20T16:02:53.737 回答