Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP未定义索引:name_Php - Fatal编程技术网

PHP未定义索引:name

PHP未定义索引:name,php,Php,我在尝试回显用户名称时出错 选择代码 public function profile($username){ $result = mysql_query("SELECT * FROM " . PFX . "employees WHERE email ='$username'"); $employee = array(); while($rows = mysql_fetch_assoc($result)){ $employee[] = $rows;

我在尝试回显用户名称时出错

选择代码

public function profile($username){
    $result = mysql_query("SELECT * FROM  " . PFX . "employees WHERE email ='$username'");
    $employee = array();
    while($rows = mysql_fetch_assoc($result)){
        $employee[] = $rows;
    return $employee;
    }
}
第页:

$employee = $user->profile($username);
<?php echo $employee['name']; ?>
所以它确实从数据库中获取用户,但它不能只回显名称,有人能看到错误在哪里吗


我知道代码没有更新。

正如您在
print\r()
上看到的,它仍然嵌套在:

Array ( [0] => Array ( [id] => 4 [name] => Test Person...
         ^ another dimension inside.
因此,在访问它时:

$employee = $user->profile($username);
<?php echo $employee[0]['name']; ?>
然后你可以这样做:

$employee = $user->profile($username);
<?php echo $employee['name']; ?>
$employee=$user->profile($username);
试试这个:

$employee[0]['name'];

把你的台词换成这个。它将访问$employee中的第一条记录,然后打印第一条记录的名称

<?php echo $employee[0]['name']; ?>

试试这段代码

<?php echo $employee[0]."<br/>"; ?>
<?php echo $employee[1]."<br/>"; ?> 
<?php echo $employee[2]."<br/>"; ?>


为什么返回在while循环中?遗漏行的索引是很常见的。我以前也犯过同样的错误:)@MichaelWestergaard当然很高兴这有帮助,我建议您在这一条上使用PDO和预处理语句,因为mysql已经被弃用了,而且您当前的代码很容易被sql注入,因为它的输入直接用于查询语句中。我知道它没有那么安全,等等。但它真的不需要任何安全性。您能解释一下您的答案吗,这将有助于OP更好地理解您提出的解决方案。
<?php echo $employee[0]['name']; ?>
<?php echo $employee[0]."<br/>"; ?>
<?php echo $employee[1]."<br/>"; ?> 
<?php echo $employee[2]."<br/>"; ?>