好的,所以我正在学习php,今天我想了解一下制作用户注册页面。注册脚本没有任何作用
我写了这个代码: - PHP
<?php
$db = mysql_connect('127.0.0.1', 'root', '') or die ('Unable to Connect.Check your connection parameters');
mysql_select_db('stock_inventory', $db) or die (mysql_error($db));
$usernamer=(isset($_POST['username'])) ? $_POST['username'] : '';
$passwordr=(isset($_POST['password'])) ? $_POST['password'] : '';
$emailr=(isset($_POST['email'])) ? $_POST['email'] : '';
$usernamer=strip_tags($usernamer);
$passwordr=strip_tags($passwordr);
$emailr=strip_tags($emailr);
$errors[]=array();
if(isset($_POST['submit']) && $_POST['submit'] == 'register')
{
$query = 'SELECT * FROM user WHERE user_name = ' . $usernamer;
$result=mysql_query($query, $db) or die (mysql_error($db));
if(mysql_num_rows($result) > 0)
{
echo "Username already exists.";
echo '<br/>';
echo "Redirecting";
header('Refresh: 3; URL=register.php');
}
if(empty($usernamer))
{
$errors[]="Username cannot be blank";
}
else if(empty($passwordr))
{
$errors[]="Password cannot be empty";
}
else if(empty($emailr))
{
$errors[]="Email Cannot be empty";
}
else if(count($errors) > 0)
{
echo '<table>';
echo '<tr>';
foreach($errors as $error)
{
echo '<td>' . $error . '</td>';
}
echo '</tr>';
echo '</table>';
die();
}
else
{
$query = 'INSERT INTO user
(user_id, user_name, user_password, user_email)
VALUES
(NULL, "' . mysql_real_escape_string($usernamer, $db) . '", "' . PASSWORD($passwordr) . '", "' . mysql_real_escape_string($emailr, $db) . '")';
$result = mysql_query($query, $db) or die (mysql_error($db));
if($result)
{
echo "Registration Succssfull";
}
else
{
echo "Error in registration";
}
}
}
?>
HTML
<html>
<head>
<title>Register</title>
</head>
<body>
<form action="register.php" method="post">
<table>
<tr>
<td>Username:</td>
<td><input type="text" name="username" /></td>
</tr>
<tr>
<td>Password:</td>
<td><input type="password" name="password" /></td>
</tr>
<tr>
<td>Email:</td>
<td><input type="text" name="email" /></td>
</tr>
<tr>
<td><input type="submit" name="register" value="register" /></td>
</tr>
</table>
</form>
</body>
</html>
问题: - 不幸的是,这个脚本什么也不做。 无论我输入什么或不输入,它什么也不做。 我该如何解决这个问题?
任何帮助表示赞赏。 谢谢。
你为什么要在userid字段中插入NULL值? – Maximus2012
你说它什么都不做?这是否意味着该网页甚至不会提交,它会提交,然后什么也不做?如果第一种情况,检查你是否可能有一些javascript停止提交(如验证脚本) – Martijn
* PSA:* mysql_ *函数[在PHP 5.5中不推荐](http://php.net/manual/en /faq.databases.php#faq.databases.mysql.deprecated)。不建议您编写新的代码,因为这会阻止您将来升级。相反,请使用[MySQLi](http://php.net/manual/en/book.mysqli.php)或[PDO](http://php.net/manual/en/book.pdo.php)和[是一个更好的PHP开发人员](http://jason.pureconcepts.net/2012/08/better-php-developer/)。 –