0

我正在尝试制作个人资料页面。我只是通过从 url 框中获取配置文件名称并获取有关此用户的信息来进行测试,但我只是获取有关我数据库中所有用户的信息。例如,如果我键入 user1,它会为我提供数据库中所有用户的所有信息。如果我特别想找到这个用户 1 并且只有他的信息,我该怎么做?

<?php $fname=$_GET["fname"] ?>
<html>
<head>
<title> <? echo $fname ?> 
</title>
</head>
<body>
<BR><BR>
<h3>
<?php if (false === $registerOrLoginNeeded):?>
<? echo "User - ".$fname." <BR> ";
?>

<?php 
 mysql_connect(DB_HOST, DB_USER, DB_PASS) or die(mysql_error()); 
 mysql_select_db(DB_NAME) or die(mysql_error()); 
 $data = mysql_query("SELECT * FROM users") 
 or die(mysql_error()); 
 while($info = mysql_fetch_array( $data )) 
 {
 echo "Real Name - ".$info['name'] . " <BR>";
 echo "Email - ".$info['email'] . " <br> " ;
 echo "Location - ".$info['location'] . " <br> " ;
 echo "Gender - ".$info['gender'] . " <br> " ;

 } 
 ?>
 <? else: endif ?>
4

1 回答 1

0

假设您的用户名字段username只是将您的查询更改为:

$data = mysql_query("SELECT * FROM users WHERE `username` = '$fname' LIMIT 1"); 

您需要告诉您的数据库您只需要该用户的一条记录。这就是我们添加WHERE子句的原因。我们的查询变成SELECT EVERYTHING FROM TABLE USERS WHERE USER'S USERNAME IS EQUAL TO THE PASSED VARIABLE FROM URI

如何检查是否找到用户

if(mysql_num_rows($data) > 0)
{
//DISPLAY USER INFO
}
else
{
//NO USER FOUND
}
于 2013-02-17T14:20:33.323 回答