gpt4 book ai didi

php - 如何使用 PHP 和 MySQL 检查重复的用户名?

转载 作者:行者123 更新时间:2023-11-29 04:06:07 24 4
gpt4 key购买 nike

我刚刚开始学习 PHP,我认为学习一些 MySQL 也是个好主意。所以我开始编写代码,但出于某种奇怪的原因,我不断收到重复的用户,这真的很糟糕。

<?php
$link = mysqli_connect(here i put the data);
if(!$link)
{
echo "Error: " . mysqli_connect_errno() . PHP_EOL;
exit;
}
else
{
if(isset($_POST['user']))
{ echo "User set! "; }
else { echo "User not set!"; exit; }
if(isset($_POST['pass']) && !empty($_POST['pass']))
{ echo "Password set! "; }
else { echo "Password not set!"; exit; }
$num = mysqli_num_rows(mysqli_query("SELECT * FROM `users` WHERE ( username = "."'".$_POST['user']."' )"));
if($num > 0)
{ echo "Cannot add duplicate user!"; }
mysqli_close($link);
}
?>

由于某些奇怪的原因,我没有得到我应该得到的输出。我已经尝试了一些在 StackOverflow 上找到的解决方案,但它们没有用。

最佳答案

connectionObject 的第一个参数未在 mysqli_query 中给出:

$num = mysqli_num_rows(mysqli_query($link, "SELECT * FROM `users` WHERE ( `username` = '".$_POST['user']."' )"));
//----------------------------------^^^^^^^

此外,您的代码容易受到 SQL 注入(inject)攻击。一个简单的修复方法是:

$_POST['user'] = mysqli_real_escape_string($link, $_POST['user']);

关于php - 如何使用 PHP 和 MySQL 检查重复的用户名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38244225/

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