Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/71.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 在html页面上显示从数据库检索到的名字的最佳方式是什么?_Php_Html - Fatal编程技术网

Php 在html页面上显示从数据库检索到的名字的最佳方式是什么?

Php 在html页面上显示从数据库检索到的名字的最佳方式是什么?,php,html,Php,Html,这里显示了一个通知,它是“ 注意:未定义的属性:mysqli\u结果::$first\u name“ 它正在返回对象,那么如何从中提取名字呢 $dbhost = 'localhost'; $dbuser = 'root'; $dbpass = ''; $db = 'blood_db'; $connection = new mysqli($dbhost,$dbuser,$dbpass,$db); if($connection->connect_error){ die("Serv

这里显示了一个通知,它是“ 注意:未定义的属性:mysqli\u结果::$first\u name“ 它正在返回对象,那么如何从中提取名字呢

$dbhost = 'localhost';
$dbuser = 'root';
$dbpass = '';
$db = 'blood_db';


$connection = new mysqli($dbhost,$dbuser,$dbpass,$db);

if($connection->connect_error){
    die("Server Error ".$connection->connect_error);
}
else{

    $query = ("SELECT first_name FROM accounts WHERE email_address = '".$_SESSION['username']."'");

    $obj = $connection->query($query);

    echo "Welcome ".$obj->first_name;
//printf(“欢迎%s”,$result->);
回声“
”;
使用下面的代码

// printf("Welcome %s",$result->);
echo '<br><a href="logout.php">Logout</a>';

如果要检查数据是否为空,可以尝试选择数据并添加条件

  $result = $connection->query($query);
  if($result){
      $row = $result->fetch_assoc();
     echo "Welcome ".$row['first_name'];
  }else{
      // check error 
  }
如果您不想检查数据,请使用此选项

$obj = $connection->query($query);
if ($obj->num_rows > 0) {

    $row = $obj->fetch_assoc();
    echo "Welcome ".$row['first_name'];
}
更多信息


一个非常基本的例子如下:

 $row = $obj->fetch_assoc();
 echo "Welcome ".$row['first_name'];

它说:致命错误:不能将mysqli_result类型的对象用作数组。$obj应该是一个msqli_result对象。请参阅文档,了解如何访问查询返回的数据:您试图从mysql查询执行对象获取记录。您需要使用以下方法之一获取记录:$row=$obj->fetch_assoc();回显“欢迎”。$row['first_name'];谢谢,这些都奏效了。但是@Parth你在代码的第二行漏掉了一个终结者:P。顺便说一句,谢谢。如果我想在用户登录后,从登录页面限制用户,我需要做什么?在用户登录后,在会话中选择用户id,如果用户id已经在会话中,而不是将用户重定向到用户帐户或用户dashb oardA更准确的方式,向您竖起大拇指!如果我想在用户登录后从登录页面限制用户,我需要做什么?您想检查该用户是否已经登录?如果是,然后显示它?只是按照这个,这是一个很好的例子,我只想检查,如果用户登录,然后限制他返回到索引页,这是登录页!如果我想在用户登录后从登录页面限制他/她,我需要做什么?您可以使用会话。看看这些文章:和
<?php

$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
$firstname = "";
// Create connection
$conn = new mysqli($servername, $username, $password, $dbname);
// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

$sql = "SELECT * FROM tbl_test WHERE email_address = '". $_SESSION['username']. "'";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
    // Retrieve Firstname
    while($row = $result->fetch_assoc()) {
        $firstname = $row["first_name"];
    }
} else {
    echo "No results found!";
}
?>

<!DOCTYPE html>
<html>
<head>
    <title>Test</title>
</head>
<body>
    <header>
        <h3>Welcome <?php echo $firstname; ?></h3>
    </header>
</body>
</html>

<?php
$conn->close();


?>