问题是只存储了密码,但其余的不存在...... 这是php代码
<?php
define('DB_NAME','my_db');
define('DB_USER','root');
define('DB_PASSWORD','123');
define('DB_HOST','localhost');
$link = mysql_connect(DB_HOST, DB_USER, DB_PASSWORD);
$firstname = isset($_POST['fname']) ? $_POST['fname'] : '';
$lastname =isset($_POST['lname']) ? $_POST['lname'] : '';
$email = isset($_POST['email']) ? $_POST['email'] : '';
$bday = isset($_POST['bday']) ? $_POST['bday'] : '';
$gender = isset($_POST['gender']) ? $_POST['gender'] : '';
$pass = isset($_POST['password']) ? $_POST['password'] : '';
$submit = isset($_POST['submit']) ? $_POST['submit'] : null;
$sql = "INSERT INTO user(fname,lname,email,bday,gender,password)
VALUES ('$firstname','$lastname','$email','$bday','$gender','$pass')";
if(!mysql_query($sql)){
die('Error: ' . mysql_error());
}
mysql_close();
?>
这是html代码
<form action="connect.php" method="post">
First name: <input type="password" name="fname">
Last name: <input type="text" name="lname"><br><br>
Email Address: <input type="email" name="email"><br><br>
Birthday: <input type="date" name="bday">
Sex: <input list="Sex" name="gender">
Password: <input type="password" name="password"><br><br>
<datalist id="Sex">
<option value="Male">
<option value="Female">
</datalist><br><br>
<input type="submit" value="Sign up!" id="btnsignup" />
</form>
*表中的数据类型是:fname是varchar,lname是varchar,email是varchar,bday是日期,性别是char,密码是char *
答案 0 :(得分:0)
首先,您的HTML只能与最新的浏览器一起使用。试试这个以支持旧的浏览器(也许你也有一个,这就是问题):
<form action="connect.php" method="post">
First name: <input type="text" name="fname">
Last name: <input type="text" name="lname"><br><br>
Email Address: <input type="text" name="email"><br><br>
Birthday: <input type="text" name="bday" placeholder="YYYY-MM-DD">
Sex: <select name="gender">
<option value="Male">Male</option>
<option value="Female">Female</option>
</select>
Password: <input type="password" name="password"><br><br>
<input type="submit" value="Sign up!" id="btnsignup" />
</form>
您可以在PHP脚本中的所有其他代码之前的第一行使用var_dump($_POST)
或print_r($_POST)
来检查HTML中的POST输入是否到达PHP。
作为替代方案,您可以检查var_dump($_REQUEST)
的输出,此数组将包含GET和POST变量。
仔细检查是否在您发布之前执行了其他PHP代码(重定向,操作$ _POST vars等)。 还要检查是否有使用您使用的变量名设置的cookie,$ _SERVER或ENV变量。
在正常情况下,您的示例代码应该有效。
答案 1 :(得分:-1)
请在表格中查看表格或字段名称中的字段限制。我认为存在问题。