gpt4 book ai didi

php - 使用PHP登录MySQL数据库?

转载 作者:行者123 更新时间:2023-11-29 19:04:47 25 4
gpt4 key购买 nike

我正在为 mySQL 和 Apache Web 服务器使用 XAMPP。数据库似乎已连接,但是当我在数据库上创建用户名和密码条目后尝试登录时。提示登录失败。

<form action ="process.php" method ="POST">
<p><label>Username:</label>
<input type="text" id="user" name="username"/>
</p>
<p><label>PassWord</label>
<input type="password" id="pass" name="password"/>
</p>
<p>
<input type="submit" id="btn" value="Login"/>
</p>
</form>

这是我的 process.php

<body>
<?php
$username =$_POST['username'];
$password =$_POST['password'];
$connectionString = mysqli_connect('localhost', 'root','', 'a7');
$result=mysqli_query($connectionString, "select * from table1 where
username = '$username' and password ='$password'") or die("failed to
find db ".mysql_error());

if($row['username']==$username && $row['password']==$password){
echo "success welcome ".$row['username'];
}

else{
echo "failed login";
}
?>

它总是出现:

Notice: Undefined variable: row in C:\xampp\htdocs\assignment7b\process.php on line 30 failed login

第 30 行:if($row['username']==$username && $row['password']==$password)

最佳答案

您正在使用之前未声明的$row变量。您的 mysql 查询结果驻留在 $result 变量中。您需要首先将这些结果提取到 $row 变量中,然后迭代它们并检查您的用户名和密码,如下所示:

while($row = mysqli_fetch_assoc($result)) {

if($row['username'] == $username && $row['password'] == $password){
echo "success welcome ".$row['username'];
}else{
echo "failed login";
}
}

基本上,这只是包含在 WHILE 循环内的原始代码。如果您只是复制那段代码周围的 while 循环,那么一切都应该有效。

关于php - 使用PHP登录MySQL数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43595582/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com