Fatal error: Uncaught Error: Call to a member function fetch_object() on string
Fatal error: Uncaught Error: Call to a member function fetch_object() on string
当我们尝试从 SQL 数据库中获取用户名时,我们目前 运行 遇到了一个问题。这是我们的查询代码和 fetch_object()
<?php
$user = 'root';
$password = 'root';
$db = 'collabowrite';
$host = 'localhost';
$port = 3306;
$conn = new mysqli($host, $user, $password, $db);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// $link = mysqli_init();
// $success = mysqli_real_connect(
// $link,
// $host,
// $user,
// $password,
// $db,
// $port
// );
//$sql='SELECT * FROM users WHERE username ='.$_GET['username'];
$result = $conn->query('SELECT * FROM users WHERE username ="'.$_POST['username']).'"';
if(!$result){
die($conn->error);
}
$userids = array();
while ($row = $result->fetch_object()){
$userids[] = $row->id;
}
echo $userids[0];
$conn->close();
?>
当我们 运行 时,我们得到错误:
Fatal error: Uncaught Error: Call to a member function fetch_object() on string in /Users/brianleaf/Google Drive/htdocs/login.php:34 Stack trace: #0 {main} thrown in /Users/brianleaf/Google Drive/htdocs/login.php on line 34
我们是 PHP 的新手,因此我们将不胜感激。
您似乎在第 34 行的最后一个 )
的外面而不是在里面。
尝试,例如:
$sql='SELECT * FROM users WHERE username ="'.$_POST['username'].'"';
$result = $conn->query($sql);
或
$result = $conn->query('SELECT * FROM users WHERE username ="'.$_POST['username'].'"');
您已经创建了一个字符串。这是应该的方式:
$result = $conn->query('SELECT * FROM users WHERE username="' . $_POST['username'] . '"');
当我们尝试从 SQL 数据库中获取用户名时,我们目前 运行 遇到了一个问题。这是我们的查询代码和 fetch_object()
<?php
$user = 'root';
$password = 'root';
$db = 'collabowrite';
$host = 'localhost';
$port = 3306;
$conn = new mysqli($host, $user, $password, $db);
// Check connection
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
// $link = mysqli_init();
// $success = mysqli_real_connect(
// $link,
// $host,
// $user,
// $password,
// $db,
// $port
// );
//$sql='SELECT * FROM users WHERE username ='.$_GET['username'];
$result = $conn->query('SELECT * FROM users WHERE username ="'.$_POST['username']).'"';
if(!$result){
die($conn->error);
}
$userids = array();
while ($row = $result->fetch_object()){
$userids[] = $row->id;
}
echo $userids[0];
$conn->close();
?>
当我们 运行 时,我们得到错误:
Fatal error: Uncaught Error: Call to a member function fetch_object() on string in /Users/brianleaf/Google Drive/htdocs/login.php:34 Stack trace: #0 {main} thrown in /Users/brianleaf/Google Drive/htdocs/login.php on line 34
我们是 PHP 的新手,因此我们将不胜感激。
您似乎在第 34 行的最后一个 )
的外面而不是在里面。
尝试,例如:
$sql='SELECT * FROM users WHERE username ="'.$_POST['username'].'"';
$result = $conn->query($sql);
或
$result = $conn->query('SELECT * FROM users WHERE username ="'.$_POST['username'].'"');
您已经创建了一个字符串。这是应该的方式:
$result = $conn->query('SELECT * FROM users WHERE username="' . $_POST['username'] . '"');