【发布时间】:2013-10-11 12:42:56
【问题描述】:
所以可能有一个非常简单的方法来解决这个问题,但目前我因为某种原因被难住了。我正在做一个实践项目,建立一个基本的社交网络。我创建了一个基本的 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");
然后在结果页面上回显会话,但它过于依赖复制粘贴等,而且我还没有让它工作。任何人对如何最好地解决这个问题有任何想法?
感谢您的帮助!
【问题讨论】:
-
为什么要将用户重定向到 results.php 而不仅仅是向他/她发送结果?
-
在 else if 语句中,您必须使用 == 将 $n 与某个值进行比较。
-
您的代码容易受到 SQL 注入攻击。
标签: php mysql session search while-loop