0

因此,我查看了发布的许多其他问题,但似乎没有一个能正确回答我的问题。

我目前有一个 php 脚本,它从数据库中读取行并运行一个循环来显示 html div 中每一行的信息。

我现在遇到的问题是,在以前加载的每张信息“卡片”中都有一张图片。当点击图片时,我需要加载不同的文件名listing.html。问题是,根据单击的图片,我想根据单击的列表加载不同的信息。我研究过使用会话,但由于我在一个循环中动态加载所有图片,我不知道如何区分它们。

这是我目前拥有的从数据库加载所有信息的代码。

$query = "SELECT * FROM Listings ORDER BY OrderNumber";

                        if ($result = mysqli_query($con, $query))
                        {
                            while ($row = mysqli_fetch_row($result)) 
                            {
                            echo "<div class ='listing'>";
                            echo "<a href='listing.html'>";
                            echo "<img src=$row[2] alt='' width='60%' align='left' >";
                            echo "</a>";
                            echo "<span style = 'font-size: 25px;'>";
                            echo $row[4];
                            echo "</span>";
                            echo "<br>";
                            echo "<br>";
                            echo "MLS Number: #";
                            echo $row[1];
                            echo "<br>";
                            echo "<br>";
                            echo "<b>Open House Details: </b>";
                            echo $row[6];
                            echo "<br>";
                            echo "<br>";
                            echo $row[5];
                            echo "<br>";
                            echo "<br>";
                            echo "<a href='";
                            echo $row[9];
                            echo "' style='color: #8a0b0b; font-weight: bold; font-style: italic; font-size: 18px;' target='_blank'>Virtual Tour</a>";
                            echo "<div class='listingPrice'>";
                            echo "$ ";
                            echo $row[7];
                            echo "</div>";
                            echo "</div>";

                            }
                            mysqli_free_result($result);
                        }

我需要一些方法,当单击 a 标签时,首先能够辨别单击了哪张图片,然后可能会使用相应的行创建一个会话变量。

4

1 回答 1

1

输出链接时,请在数据中包含来自行的查询字符串值。像这样的东西:

echo "<a href='listing.html?id=" . row[0] . "'>";

(我只是在猜测row[0],它可以是唯一标识该记录的任何标识符。)这样,所有链接都会在listing.html页面上直接嵌入您需要的数据。(不应该listing.php吗?)

因此,在被引用的页面上,该值将在查询字符串中可用。像这样的东西:

$_GET["id"]

在这种情况下,确实不需要会话状态,如果您只需要知道点击了哪条记录,那么该信息可以直接放在链接中。这减少了代码中的耦合,使链接更加 RESTful,甚至可以让人们根据需要直接为链接添加书签。

于 2013-09-09T18:04:58.440 回答