【发布时间】:2015-08-06 03:11:35
【问题描述】:
所以我一直在寻找许多关于 php 注册页面的参考资料,但是我遇到了麻烦。重新加载页面后,“用户名已存在”行始终存在。我知道我的代码有问题,但是看到我不是 PHP Savvy,我真的不知道如何解决它;我已经环顾了几个小时,似乎仍然无法解决这个问题,并且尝试了许多不同的方法来注册帐户。也许你们中的一个可以帮助我。这是我的代码:
<html>
<body>
<form method="post" action="">
Username: <input type="text" name="username" value="" /><br/>
Password: <input type="password" name="pass" value="" /><br/>
Repeat Password: <input type="password" name="pass2" value=""/><br/>
<input type="submit" name="submit" value="Submit" />
</form>
</body>
</html>
<?php
$con = mysql_connect("localhost", "root", "123");
$db = mysql_select_db("cq3");
$Username = isset($_POST['Username']);
$sql = "SELECT * FROM accounts WHERE Username = '$Username'";
$result = mysql_query($sql, $con);
if(mysql_num_rows($result)){
echo "Username already exists!";
}
else
{
if(isset($_POST['submit']))
{
$sql = "INSERT INTO `accounts` (Username, Password) VALUES ('".$_POST['username']."', '".$_POST['pass']."')";
$sql = mysql_query($sql);
}
}
?>
【问题讨论】:
-
比较
name="username"和$_POST['Username']- 那么这将不起作用$Username = isset($_POST['Username']);有两个原因。使用错误报告和更安全的方法来存储密码以及 MySQL API。 -
@Fred-ii- 我不认为他想询问未定义的索引错误。他在问为什么即使用户没有按下提交按钮,他的代码仍然显示出来。
-
@Script47 你最好再看看我对他们的第一条评论。
-
@Fred-ii- 我遇到了麻烦。重新加载页面后,“用户名已存在”行始终存在。我知道我的代码有问题,但是看到我不是 PHP Savvy,我真的不知道如何解决它; 我做了并查看。这是他的问题,而不是他代码中的其他问题,甚至认为可能存在。
-
@Script47 他们的代码是关闭它的全部基础。再次检查他们的代码,并用细齿梳子,包括我对他们的第一条评论,说明他们的代码为什么会失败。好了,不能再聊天了。你需要调整你的答案,因为它并不完全正确。编辑:代码比文字更响亮更清晰;-)
标签: php html registration