请有人查看下面的代码,即处理通过表单提交的数据并将此数据插入MySQL数据库。
<? $con = mysql_connect("localhost","username","password");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("database_name", $con);
$name=mysql_real_escape_string(serialize($_POST['fullname15']));
$bdate=mysql_real_escape_string(serialize($_POST['birthdate19']));
$sql="INSERT INTO bookings (full_name, dob, email) VALUES ('$_POST[name]','$_POST[bdate]','$_POST[email]')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
echo "Form Sent to Database";
mysql_close($con)
?>`
我使用了一个名为JotForm的表单构建器来构建我的表单,并在提交表单时将数据发送到上面的process.php脚本。问题是我无法将这些数据存入我的数据库。目前唯一成功的领域是电子邮件。
数据正在成功提交到我的脚本,因为'var_dump'显示了我:
[fullname15] => Array ( [0] => Joe [1] => Bloggs )
[birthdate19] => Array ( [0] => 14 [1] => November [2] => 1921 )
[email16] => joebloggss@sample.com
我是编程的新手,并且已经尝试了几个小时来获取fullname和birthdate以插入到我几乎放弃的数据库字段中。任何帮助都将不胜感激。
答案 0 :(得分:3)
您没有向$ sql语句发送任何内容。例如,$ _POST ['name']为空。要在将来进行调试,请打印出$ sql进行检查。
$name=mysql_real_escape_string(serialize($_POST['fullname15']));
$bdate=mysql_real_escape_string(serialize($_POST['birthdate19']));
$email=mysql_real_escape_string(serialize($_POST['email16']));
$sql="INSERT INTO bookings (full_name, dob, email) VALUES ('$name','$bdate','$email')";