0

所以可能有一种非常简单的方法来解决这个问题,但目前我因为某种原因感到困惑。我正在做一个实践项目,建立一个基本的社交网络。我创建了一个基本的 php/mysql 搜索功能,供用户通过查询数据库来搜索其他用户,其功能如下: 1. 用户在自己的个人资料页面上的 serach 表单中输入其他用户的名称 2. 这会将他们重定向到一个“搜索朋友”的 php 页面,它查询数据库并找到与搜索类似的记录。3.页面重定向到结果页面,原始用户可以看到其他用户的迷你资料。

我的问题是:如何将while循环产生的数据发送到结果页面。

$resulting = mysqli_query($con, "SELECT * FROM $tbl_name WHERE LastName LIKE '%$secondquery%'
                            OR LastName LIKE '%$firstquery%'
                            OR LastName LIKE '%$thirdquery%'
                            OR LastName LIKE '%$fourthquery%'
                            OR FirstName LIKE '%$secondquery%'
                            OR FirstName LIKE '%$firstquery%'
                            OR FirstName LIKE '%$thirdquery%'
                            OR FirstName LIKE '%$fourthquery%'
                            ");
    $counting = mysqli_num_rows($resulting);
    if($counting != 0){

    while($row = mysqli_fetch_array($resulting))
     {
         echo $row['FirstName'] . " " . $row['LastName'] . "<br>";

         }

         mysqli_close($con);
        header("location: results.php");

我想过做类似的事情:

while($row = mysqli_fetch_array($resulting))
     {
        if($n = 1){
         $_SESSION['a'] = $row['FirstName'] . " " . $row['LastName'] . "<br>";
         $n = 2;
        }elseif($n = 2){
        $_SESSION['b'] = $row['FirstName'] . " " . $row['LastName'] . "<br>";
        $n = 3;
        }
         }

         mysqli_close($con);
        header("location: results.php");

然后在结果页面上回显会话,但它过于依赖复制粘贴等,而且我还没有让它工作。任何人对如何最好地解决这个问题有任何想法?

感谢您的帮助!

4

2 回答 2

0

我会这样做:

当用户点击搜索按钮时,用户在搜索框中输入的信息会使用 $_GET 变量通过 url 发送到结果页面。然后结果页面检索 $_GET 变量并执行查询并显示结果。

通过 URL 传递搜索查询很方便,因为用户可以通过浏览器历史导航回到结果页面,或保存书签。这类似于能够复制和粘贴 google 搜索 url。

希望这可以帮助。

于 2013-10-11T13:28:57.603 回答
0

如果你想在你的站点页面之间共享一些数据,session 是不错的选择,反正如果查询结果太大,可能会消耗很多内存,所以尽量减少查询中的数据选择。所以你可能想使用类似 change $resultingto 的东西$_SESSION[resulting]

于 2013-10-11T12:52:29.693 回答