0

问题:如何解决我在处理会话时遇到的问题,因为它返回了不正确的值。情况:我在表中的这个会话变量上有问题。我使用 while 循环将数据从数据库添加到表中。这是我的代码:

                    <form action="edit2.php" method="get">
                            <?php

                    $link = mysql_connect("localhost", "root", "root");
                    mysql_select_db("ispot", $link);

                    $result4 = mysql_query("SELECT * FROM user_ispot", $link);
                    $num_rows = mysql_num_rows($result4);


                $result = mysqli_query($con,"SELECT * FROM complaints");

                    echo "<table border='1'>
                    <tr>
                    <th>Id Number</th>
                    <th>Category</th>
                    <th>Problem</th>
                    <th>Date Reported</th>
                    <th>Complaint ID </th>
                    <th>Action</th>
                    </tr>";

            while($row = mysqli_fetch_array($result))
            {

                echo "<tr>";


                echo "<td name=id_num>" . $row['id_number'] . "</td>";
                $_SESSION['favcolor'] = "$row[id_number]";
                echo "<td name=remarks>" . $row['remarks'] . "</td>";
                echo "<td name=status>" . $row['status'] . "</td>";
                echo "<td name=date>" . $row['date_reported'] . "</td>";
                echo "<td>" . "<INPUT TYPE = text Name = cid VALUE = " . $row['complaint_id'] . ">" . "</td>";
                echo "<td>" . "<INPUT TYPE = Submit Name = Submit1 VALUE =Edit>" . "</td>";
                echo "</tr>";

            }
                    echo "</table>" ;?>

它看起来像这样: 在此处输入图像描述

如您所见,有一个编辑按钮,我可以在其中编辑表格中的特定行。当我按下编辑按钮时,这将显示:

在此处输入图像描述

请注意,用户 ID 错误,我该如何解决?因为这里发布的用户 ID 是插入表中的最后一个 user_id。

这是我的第二张图片的代码:

<b>Date:</b> <input type='text' name='today' placeholder='<?php echo $today ?>' disabled='disabled'> <br><br>
    <b>User ID:</b> <input type='text' disabled='disables' name='userid' placeholder='<?php

                //$comid = $_GET["cid"];
                //echo $userid;
                echo $_SESSION['userid'];

                //$result = mysqli_query($con,"SELECT * FROM complaints WHERE id = XXX");
                //$row = mysqli_fetch_assoc($result);
                //print_r($row);


                    //$result2 = mysql_query("SELECT * FROM complaints WHERE complaint_id = '$comid'", $link);
                    //$result2 = mysql_query("SELECT * FROM complaints", $link);
                    //while($row = mysql_fetch_assoc($result2))
                    //{
                    //echo $row['id_number'];

                    //}


            ?>'></br><br>

任何帮助,将不胜感激。谢谢你。

4

2 回答 2

0
$result2 = mysql_query("SELECT * FROM complaints WHERE complaint_id = '$comid'", $link);
$result2 = mysql_query("SELECT * FROM complaints", $link);

您必须只使用其中之一。我认为问题是第二行。此查询不选择“comid”的“id”。

您的第一个查询行就足够了:

$result2 = mysql_query("SELECT * FROM complaints WHERE complaint_id = '$comid'", $link);
于 2013-11-04T16:27:42.233 回答
0

我用链接替换了按钮,在单击编辑时用它来传递值,用 get 捕获值,它对我有用。

在edit.php中

echo "<td> <a href = 'edit2.php?id=$num_id'>Edit</a></td>";

在edit2.php中

    $id = $_GET['id'];

<b>User ID:</b> <input type='text' disabled='disables' name='userid' value = '<?php echo $id;?>'></input type>
于 2013-11-05T01:03:54.927 回答