通过php登录数据库失败
我在MySQL上创建了一个数据库,但当我试图通过PHP文件登录时,我收到了两个警告: 警告:mysql_query()希望参数1是字符串,对象在第7行的C:\Xampp\htdocs\login.php中给出 警告:mysqli_num_rows()要求参数1为mysqli_结果,在第8行的C:\Xampp\htdocs\login.php中为空通过php登录数据库失败,php,mysql,connection,Php,Mysql,Connection,我在MySQL上创建了一个数据库,但当我试图通过PHP文件登录时,我收到了两个警告: 警告:mysql_query()希望参数1是字符串,对象在第7行的C:\Xampp\htdocs\login.php中给出 警告:mysqli_num_rows()要求参数1为mysqli_结果,在第8行的C:\Xampp\htdocs\login.php中为空 失败的 Connection.php <?php $mysql_usernmae="root"; $mysql_passw
失败的 Connection.php
<?php
$mysql_usernmae="root";
$mysql_password="123";
$db="map";
$db= new mysqli('localhost',$mysql_usernmae,$mysql_password,$db);
echo "Connection successfull";
?>
<?php
require "connection.php";
$user_name="123";
$user_pass="123";
$mysql_qry="select * from user_info where user_name like
' $user_name' and user_password like '$user_pass';";
$result=mysql_query($db,$mysql_qry);
if (mysqli_num_rows($result)>0)
{
echo "login Successsss";
}
else
{
echo "faileddddd";
}
?>
Login.php
<?php
$mysql_usernmae="root";
$mysql_password="123";
$db="map";
$db= new mysqli('localhost',$mysql_usernmae,$mysql_password,$db);
echo "Connection successfull";
?>
<?php
require "connection.php";
$user_name="123";
$user_pass="123";
$mysql_qry="select * from user_info where user_name like
' $user_name' and user_password like '$user_pass';";
$result=mysql_query($db,$mysql_qry);
if (mysqli_num_rows($result)>0)
{
echo "login Successsss";
}
else
{
echo "faileddddd";
}
?>
是的!好吧,错误就在
login.php
文件写入中
$result=mysqli_query($db,$mysql_qry);
而不是
$result=mysql_query($db,$mysql_qry);
警告:编写自己的访问控制层并不容易,而且有很多机会使它严重出错。请不要编写您自己的身份验证系统,因为任何现代的同类产品都具有强大的内置功能。至少要遵循并且永远不要将密码存储为纯文本。警告:您正在混合和mysqli
,这是您绝对不应该做的事情。仅使用mysqli
函数。为了避免混淆,使用面向对象的接口使错误变得非常明显,而不是一个字母不同。