gpt4 book ai didi

php - 我不知道这段代码 SQL 有什么问题

转载 作者:太空宇宙 更新时间:2023-11-03 10:58:11 25 4
gpt4 key购买 nike

我是 PHP 和 Mysql 的新手,出于某种原因,它只检查语句 if($email == $result2 ) 输入的是用户名还是电子邮件。我不知道为什么?有人可以从逻辑上解释一下吗,我被困了几个小时才弄明白。 :( 谢谢,请客气。

<?php 
session_start();
include_once("connect.php");

$email = $_POST['email'];
$username = $_POST['username'];
//echo $_POST['email'];



if(isset($_POST['email']) )
{
$extract= mysql_query("SELECT username, email FROM users");
$resultq = mysql_num_rows($extract);
while($row= mysql_fetch_array($extract))
{

$result = $row['username'];
$result2 = $row['email'];


//$pass = $_POST['pass'];

if($email == $result2 )
{ //check if there is already an entry for that username
echo "Email Address is already used!";
exit(); //break;
}
if ($username == $result )
{
echo " Username is already Taken!";
//mysql_query("INSERT INTO users (Username, Password) VALUES ('$user', '$pass')");
//header("location:index.php");
exit(); //break;
}
else
{

}
}

最佳答案

它的行为与所写的一样。如果 if() 测试成功,您告诉脚本 exit()

删除 exit() 调用...

您也确实需要了解查询中的 WHERE 子句。您正在吸取整个用户表并一次比较一条记录。这相当于开车去杂货店,买光整个商店的存货,然后开回家……然后把它全部扔进垃圾桶,因为你真正想要的只是一根糖果。

关于php - 我不知道这段代码 SQL 有什么问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18411905/

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