所以可能有一种非常简单的方法来解决这个问题,但目前我因某种原因感到困惑。我正在做一个实践项目,建立一个基本的社交网络。我创建了一个基本的php/mysql搜索函数,供用户通过查询数据库来搜索其他用户,其功能如下:1. 用户在自己的个人资料页面上输入其他用户的名称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");
然后回显结果页面上的会话,但它过于依赖复制粘贴等,无论如何我还没有让它工作。有人对如何最好地解决这个问题有任何想法吗?
感谢任何帮助!
如果您想在网站页面之间共享一些数据,会话是不错的选择,无论如何,如果查询结果太大,可能会消耗大量内存,因此请尝试尽量减少查询中的数据选择。 所以你可能想使用类似的东西 更改$resulting
到 $_SESSION[resulting]
!
这就是我会这样做的:
当用户单击搜索按钮时,用户在搜索框中键入的信息随后使用 $_GET 变量通过 url 发送到结果页面。然后,结果页检索 $_GET 变量并执行查询并显示结果。
通过 URL 传递搜索查询非常方便,因为这样用户可以通过浏览器历史记录导航回结果页面,或保存书签。这类似于能够复制和粘贴谷歌搜索网址。
希望这有帮助。