Myqli PHP登录 [英] Myqli php login
问题描述
我刚开始使用mysqli,我试图连接到数据库并登录,我收到错误消息,
I have just started using mysqli I'm trying to connect to a database and login, I'm getting the error messages,
注意:未定义的索引:第14行E:\ EasyPHP-DevServer-14.1VC11 \ data \ localweb \ my Portable files \ course work \ login.php中的___ mysqli_ston
Notice: Undefined index: ___mysqli_ston in E:\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\course work\login.php on line 14
我还试图在表单页面上显示错误消息,而不是创建当前正在执行的新页面.我忘记了PHP是否必须在同一页面上才能显示错误?
I'm also trying to display error messages on the page of the form rather than creating a new page which it's currently doing. I forget does the PHP have to be on the same page for the errors to be displayed?
警告:mysqli_query()期望参数1为mysqli,在第14行的E:\ EasyPHP-DevServer-14.1VC11 \ data \ localweb \ my Portable files \ course work \ login.php中给出空值
Warning: mysqli_query() expects parameter 1 to be mysqli, null given in E:\EasyPHP-DevServer-14.1VC11\data\localweb\my portable files\course work\login.php on line 14
找不到数据库
<?php
session_start();
$username = $_POST['username'];
$password = $_POST['password'];
$errors = array();
if ($username&&$password)
{
$connect = mysqli_connect("localhost","root","") or die ("Could not connect");
((bool)mysqli_query($GLOBALS["___mysqli_ston"], "USE login")) or die ("Could not find database");
$query = mysqli_query($GLOBALS["___mysqli_ston"], "SELECT * FROM users WHERE username ='$username'");
$numrows = mysqli_num_rows($query);
if ($numrows !=0)
{
while ($row =mysqli_fetch_assoc($query))
{
$dbusername = $row['username'];
$dbpassword = $row['password'];
}
if ($username==$dbusername&&$password==$dbpassword)
{
echo header( 'Location: member.php' ) ;
$_SESSION['username']=$dbusername;
$_SESSION['userid']=$userid;
}
else
echo "Inncorrect password";
}
else
die("That user dosen't exist");
}
else
die("Please enter a username and a password");
?>
推荐答案
您应该具有mysqli_connect
的数据库名称.所以,就这样:
You should have a database name for mysqli_connect
. So, go like this:
$connect=mysqli_connect('localhost','root','','databse_name');
以及为什么要使用__mysqli_ston
代替?
and why are you using __mysqli_ston
for?Use this instead
$query = mysqli_query($connect, "SELECT * FROM users WHERE username='$username'");
请勿使用__mysqli_ston
.
这应该可以.如果不起作用,请找我.
This should work.If doesn't work,get back to me.
这篇关于Myqli PHP登录的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!