PHP注册脚本-不工作

PHP注册脚本-不工作,php,mysql,scripting,Php,Mysql,Scripting,我刚刚从头开始做了一个注册脚本,但我仍将改进它。基本上,在我改进它之前,我先测试它-不知为什么,它不起作用 if(isset($_POST['submit'])) { $username = mysql_escape_string(trim($_POST['login'])); $password = $_POST['password']; $vpassword = $_POST['vpassword']; $email = mysql_escape_string(tri

我刚刚从头开始做了一个注册脚本,但我仍将改进它。基本上,在我改进它之前,我先测试它-不知为什么,它不起作用

if(isset($_POST['submit']))
{
   $username = mysql_escape_string(trim($_POST['login']));
   $password = $_POST['password'];
   $vpassword = $_POST['vpassword'];
   $email = mysql_escape_string(trim($_POST['email']));
   $vemail = mysql_escape_string($trim($_POST['vemail']));

   $ip = $_SERVER['REMOTE_ADDR'];
   $date = date("jS F Y");

if(!empty($username) || !empty($password) || !empty($vpassword) || !empty($email) || !empty($vemail))
{
    if($password == $vpassword && $email == $vemail)
    {
        $sql = "SELECT username FROM members WHERE username='" . $username . "'";

        $result = mysql_query($sql) or die(mysql_error());

        if(mysql_affected_rows($result) == 1)
        {
            echo "The account already exists!";
        }
        else
        {
            $sql = "INSERT INTO members
                    (username, password, email, ip, level, type, signed, hide, hidemail, avatar, notes)
                    VALUES('" . $username . "', '" . $password . "', '" . $email . "', '" . $ip . "', '0', '0', '" . $date . "', '1', '1', '', '')";

            $result = mysql_query($sql) or die(mysql_error());
        }
    }
    else
    {
        echo "Please check the fields so that they match";
    }
}
else
{
    echo "Check the missing fields!";
}

if($result)
{
    echo "Account created successfully!";
}
else
{
    echo "Error creating account";
}
}
这有什么不对的


感谢帮助:-

当您使用| |时,您正在检查其中一个值是否为空。使用&&代替和。这样就不允许任何字段为空。因此:

如果!空$username | |!空$password | |

这意味着如果其中任何一个不是空的。改用这个:

如果!空$username&!空$password&&


这意味着如果没有空字段。

你能解释一下什么不起作用吗?我认为你的条件应该是&&而不是| | sshow是正确的!您也可以尝试回显结果INSERT查询,并直接向数据库发出命令,您可能会发现错误不在PHP中,而是在SQL查询中。也许是“日期”字段?好吧,我改了。。。但是当我提交注册表时,它只显示空白、白色、空白:我的数据库表有以下内容:创建表成员id bigint40 NOT NULL自动递增,用户名varchar35 NOT NULL,密码varchar30 NOT NULL,电子邮件varchar60 NOT NULL,ip varchar18 NOT NULL,主键id引擎=MyISAM默认字符集=latin1自动增量=1;正如上面的这个数据库一样,我在发布后对它和PHP脚本进行了编辑,以查看它是否有效,结果证明它无效