我这里有这个html搜索:
<form action="index.php" method="POST">
<input id="search" type="text" placeholder="Search for Friends" name="search_name">
<input class="submit" type="submit" name="search-submit" value="Search">
</form>
而这个搜索引擎的 php 代码:
<?php
if (isset($_POST['search-submit'])) {
$search_name = $_POST['search_name'];
$aVar = mysqli_connect('localhost','root','','socialnetwork');
$result = mysqli_query($aVar, "SELECT username FROM users WHERE username LIKE '%$search_name%'");
$found = 1;
while ($row = mysqli_fetch_assoc($result)) {
$username = $row['username'];
@$output .= '<h2 class="friends-display"><a href="">'.$username.'</a></h2><hr>';
}
}
?>
现在这段代码工作正常。它允许用户搜索其他用户。 锚标记"friends-display">通过使用变量$output
显示代码的结果。然后,$output
在旁听。
我的问题是:我想做一个if语句,所以当用户点击锚标签"friends-display">时,它应该显示用户点击的用户名的个人资料。
示例:您搜索Mike并找到此用户名。比你点击它,它应该显示迈克的个人资料。如何使用锚标记执行此操作?
我已经尝试过if isset()
,但它对我不起作用。
更改输出变量,如下所示
....
while ($row = mysqli_fetch_assoc($result)) {
$username = $row['username'];
@$output .= '<h2 class="friends-display"><a href="profile.php?user='.$username.'">'.$username.'</a></h2><hr>';
}
....
创建新的文件配置文件.php并添加以下基本行。
<?php
If(isset($_GET['user']) && !empty($_GET['user'])){
$username = $_GET['user'];
// check for username found in database.
// if not found exit with error "user not found"
// else show user profile
}else{
Die("unothrized access");
}
我希望这将指导您实现目标。 快乐的编码:)