PHP用表格注册,数据输入数据库

时间:2012-09-19 20:31:35

标签: php admin

我有我的网站的管理员部分,并希望能够允许管理员注册然后能够登录。现在我正在处理注册表单。当我提交用户名和密码时,Web浏览器只显示一个空白屏幕,并且没有任何内容添加到我的数据库中。这是我的代码。任何想法为什么会发生这种情况,而不起作用?

<?
$con = mysql_connect("localhost", "root", "");
if(!$con)
    {
    die('Could not connect: ' .mysql_error());
    }
mysql_select_db("bics_place", $con);

$myusername=$_POST['myusername']; 
$mypassword=$_POST['mypassword']; 
$encrypted_mypassword=md5($mypassword);

$sql = "INSERT INTO admin
            (username, password)
            VALUES
            ('myusername','encrypted_mypassword')";

if(!mysql_query($sql, $con))
    {
    die('Error: ' .mysql_Error());
    }
echo "1 record added";

mysql_close($con);

?>

2 个答案:

答案 0 :(得分:2)

我在本地测试了你的代码,它有效。有几件事要检查。

您的服务器可能未配置为允许短标签。尝试将第1行中的'<?'更改为'<?php'

如果您必须使用短标签(您正在使用其他人使用它们的代码),则需要编辑您的php.ini文件以允许它。出于兼容性原因,我倾向于避开它们。

short_open_tag=On

如果这不能解决您的问题,请将error_reporting(E_ALL);添加到文件的开头,它应该会显示错误。在代码运行后将其删除。

此外,您还需要编辑$ sql变量。将$放在变量名前面。

$sql = "INSERT INTO admin
        (username, password)
        VALUES
        ('$myusername','$encrypted_mypassword')";

否则,您的服务器错误日志会告诉您什么?

答案 1 :(得分:0)

不确定为什么您不会看到任何错误,但您的SQL不正确。

你有:

$sql = "INSERT INTO admin (username, password) VALUES ('myusername','encrypted_mypassword')";

应该是:

$sql = "INSERT INTO admin (username, password) VALUES ('$myusername','$encrypted_mypassword')";

您错过了变量前面的$