Php Can';t从MySQL数据库中获取行
我对mysql有点生疏,尤其是现在它是mysqlI。。。下面的脚本中没有任何操作,变量$row[username]等为空。我做错了什么Php Can';t从MySQL数据库中获取行,php,mysql,login,Php,Mysql,Login,我对mysql有点生疏,尤其是现在它是mysqlI。。。下面的脚本中没有任何操作,变量$row[username]等为空。我做错了什么 <?php session_start(); include_once('./db_config.php'); if (mysqli_connect_errno()) { echo "Failed to connect to MySQL: " . mysqli_connect_error(); } $username = mysqli_r
<?php
session_start();
include_once('./db_config.php');
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$username = mysqli_real_escape_string($conn, $_POST['username']);
$password = md5(mysqli_real_escape_string($conn, $_POST['password']));
$query = "SELECT * FROM players WHERE username = '".$username."' AND password = '".$password."'";
if($res = mysqli_query($conn, $query))
{
$row = mysqli_num_rows($res);
$_SESSION['Username'] = $row['username'];
$_SESSION['uID'] = $row['id'];
$_SESSION['Join_Date'] = $row['join_date'];
mysqli_free_result($res);
header('Location: ../index.php');
} else
{
echo mysqli_error($conn);
}
?>
您不是在获取记录,而是在执行myql\u num\u行(这只会给出记录的编号) 使用此选项获取记录
$row=mysqli\u fetch\u数组($res,mysqli\u ASSOC)代码>
您不是在获取记录,而是在执行myql\u num\u行(这只会给出记录的编号)
使用此选项获取记录
$row=mysqli\u fetch\u数组($res,mysqli\u ASSOC)代码>
mysqli_num_rows
返回列数,而不是行数。我认为您的代码中有输入错误,我无法在其中找到mysqli_fetch_数组
mysqli_num_rows
返回列数,而不是行数。我认为您的代码中有输入错误,我在它里面找不到mysqli\u fetch\u array
,很高兴注意到你实际上提到了什么是错的,然后是你的答案。@Anish谢谢你的回答!它仍然会给我一些未索引的索引错误,例如:注意:未定义索引:username
你能粘贴到这里吗?注意:未定义索引:第19行的C:\wamp\www\gor\scripts\login.php中的username
注意:未定义索引:第20行的C:\wamp\www\gor\scripts\login.php中的id
注意:未定义索引:在C:\wamp\www\gorgame\scripts\login.php中加入日期在第21行ok。在浏览器上回显$query,然后直接在数据库中运行它,查看它是否返回该查询的任何结果。很高兴注意到,您实际上已经提到了错误,然后是您的答案。@Anish感谢您的回答!它仍然会给我一些未索引的索引错误,例如:注意:未定义索引:username
你能粘贴到这里吗?注意:未定义索引:第19行的C:\wamp\www\gor\scripts\login.php中的username
注意:未定义索引:第20行的C:\wamp\www\gor\scripts\login.php中的id注意:未定义索引:在C:\wamp\www\gorgame\scripts\login.php中加入日期在第21行ok。在浏览器上回显$query,然后直接在数据库中运行它,查看它是否返回该查询的任何结果。
<?php
session_start();
include_once('./db_config.php');
if (mysqli_connect_errno())
{
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
$username = mysqli_real_escape_string($conn, $_POST['username']);
$password = md5(mysqli_real_escape_string($conn, $_POST['password']));
$query = "SELECT * FROM players WHERE username = '".$username."' AND password = '".$password."'";
if($res = mysqli_query($conn, $query))
{
$row = mysqli_fetch_array($res,MYSQLI_NUM);
$_SESSION['Username'] = $row['username'];
$_SESSION['uID'] = $row['id'];
$_SESSION['Join_Date'] = $row['join_date'];
mysqli_free_result($res);
header('Location: ../index.php');
} else
{
echo mysqli_error($conn);
}
?>