基本上我正在尝试登录。我理解一个非常少量的PHP,但每次我尝试登录它都有效。所以它不遵循下面的if语句。所以我想看看是否有人可以帮我打印$ results而不是字符串。每次我回应它,它说错误不能打印为字符串。这让我觉得它是一个数组,有人可以帮忙吗? =(
<?php
include('include/dbConnection.php');
if (isset($_REQUEST['attempt']))
{
//variables
$user = $_POST['user'];
$password = sha1($_POST['password']);
//SQL statement
$query = "SELECT COUNT(user)
FROM users
WHERE user = '$user'
AND password = '$password'";
//Execute prepared MySQL statement
$results = mysqli_query($dbc,$query) or die('Error querying database');
/* Here is where I want to print $results
if ($results = 1)
{
session_start();
$_SESSION['$user'];
header('location: home.php');
}
else
{
echo $results + 'Incorrect Username or Password';
}
*/
//Close dbConnect
mysqli_close($dbc);
}
?>
答案 0 :(得分:1)
使用var_dump($output)
或print_r($output)
显示数组的内容。
答案 1 :(得分:1)
你必须使用它:
echo "<pre>";
print_r($results);
echo "</pre>";
它首先回应,以便正确格式化阵列的打印。如果你不这样做,它将全部在一行。
希望这有帮助! :d
答案 2 :(得分:0)
mysql_query()返回语句结果句柄,而不是您在查询中请求的数据。首先,您必须获取一行数据才能访问实际的查询数据:
$result = mysqli_query(...);
$row = mysqli_fetch_row($result);
$count = $row[0];
答案 3 :(得分:0)
mysqli_query函数返回false。它为select或show查询返回一个MySQLi_Result对象,对于插入和更新查询返回true。
如果您的查询由于某种原因失败,您的脚本将因or die
语句而死亡,并且永远不会返回false。
if ($results = 1)
语句为结果变量赋值1。当您的脚本运行时,您的代码将在此块中输入。因为您控制赋值语句是否已完成。
你的查询是一个select,mysqli_query函数返回MySQLi_Result对象。