我想做一个简单的注册表单,将数据存储在数据库中,但它似乎对我不起作用。
这是我的HTML代码:
<html>
<body>
<form method="post" name="register" action="register.php">
<table>
<tr>
<td>User Name:</td>
<td><input type="text" name="name"></td>
</tr>
<tr>
<td>User Email:</td>
<td><input type="text" name="email"></td>
</tr>
<tr>
<td>User Role:</td>
<td><input type="text" name="role"></td>
</tr>
<tr>
<td><input type="submit" name="SubmitForm" value="Save"></td>
</tr>
</form>
</body>
</html>
这是我的PHP代码:
<?php
// Make a MySQL Connection
$user="root";
$password="my password";
$database="playtime";
$host="localhost";
$table="ttuser";
mysql_connect($host, $user, $password) or die("Connection Failed");
mysql_select_db($database) or die("Connection Failed");
$name = $_POST['name'];
$email = $_POST['email'];
$role = $_POST['role'];
// Insert a row of information into the table "ttuser"
$query = "INSERT INTO ttuser (uemail, uname, urole) VALUES('$email', '$name', '$role')";
if(mysql_query($query)){
echo "inserted";}
else{
echo "fail";}
?>
它连接到数据库很好,但是当我点击html页面上的提交时,它转到php但没有显示任何内容。 有人可以帮忙吗?
答案 0 :(得分:1)
如果表ttuser具有任何没有默认值的字段,并且您没有向这些字段提供任何数据(例如,有一个名为“usalary”的字段没有默认值,而该字段未包含在INSERT INTO语句中),MySQL语句将失败。
注意许多sql注入警告:)
答案 1 :(得分:0)
好的伙计,这完全是我的错,因为我没有通过服务器查看页面。 谢谢你的帮助,这是一个愚蠢的错误