无法获取要显示的用户信息

时间:2013-12-28 00:12:21

标签: php mysql database

我觉得这样一个菜鸟问了另一个问题,但是我想去谷歌几个小时,看看我能不能在任何地方找到解决办法。由于没有人拥有100%相同的代码,我只是要继续问另一个问题,因为这就是这个社区的用途:P

所以是的,我做的是以下内容;我创建了一个member_list,其中列出了所有用户名并链接到他们自己的页面。现在我想通过从数据库中获取信息来创建自己的页面。链接如下:profile.php?username = USERNAMEOFTHEUSER,例如:domain.com/profile.php?username=robert

我创建了一个名为'fetch_user_info'的新函数,并将其存储在'user_info.php'中。这是文件的代码:

    $users = array();
$result = mysqli_query($mysqli,"SELECT username FROM members");
while($row = mysqli_fetch_assoc($result)){
  $users[] = $row['username']; 
}

function fetch_user_info($username){
$mysqli = "SELECT username, name, age, FROM members  WHERE username = '$username'"; 

    $result = mysqli_query($mysqli);
 return mysqli_fetch_assoc($result);
}

我遇到的问题是从数据库中获取他(或其他任何人)的数据。我知道我必须使用$ _GET。这是我的testdocuments代码;

<?php
include '../../includes/db/db_connect.php';
include '../../includes/fct/functions.php';
include 'user_info.php';

sec_session_start();

$user_info = fetch_user_info($_GET['username']);

print_r($user_info);

?>
<!DOCTYPE>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Untitled Document</title>
</head>

<body>

</body>
</html>

我收到以下错误:

警告:mysqli_query()需要至少2个参数,1中给出1 警告:mysqli_fetch_assoc()期望参数1为mysqli_result,在

中给出null

我想要的是在任何我想要的地方回应他们的用户名,姓名,年龄等。所以它必须是变量!

任何帮助将不胜感激!

3 个答案:

答案 0 :(得分:1)

你正在使用mysqli_query程序样式。你需要传递两个参数。

第二个是您要执行的查询,第一个是链接。

这样的链接:$link = mysqli_connect("localhost", "my_user", "my_password", "world");

答案 1 :(得分:0)

这甚至不是正确的语法。每次查询时都需要指定连接。

$con = mysqli_connect("localhost", "my_user", "my_password", "world");

function fetch_user_info($username, $con){
$mysqli = "SELECT username, name, age FROM members WHERE username = '$username'";   

$result = mysqli_query($con, $mysqli);
return mysqli_fetch_assoc($result);
}

答案 2 :(得分:0)

我删除了这个功能并以新手的方式做到了。不确定它是否真的是一种很好的方法,但它确实有效。如有必要,请纠正我。我在这里学习。

对于遇到同样问题的人,请转到:

$username = ($_GET['username']);
$getUsers = mysqli_query($mysqli,"SELECT * FROM members WHERE username = '$username'");
if ( mysqli_num_rows($getUsers) > 0 ) { 
      $row = mysqli_fetch_array($getUsers);
        $username = $row['username']; 
        $name = $row['name']; 
        $age = $row['age']; 
        $sex = $row['sex']; 
        $place = $row['place']; 
      } else {
        echo "Woopie, something went wrong!";
      }

然后你可以在你喜欢的页面中的任何地方回显: