我的PHP程序不会将我在浏览器中输入的记录插入到我的SQL数据库中。见下面的代码。此代码是我之前询问过的更新代码。出于其他原因,有人建议将其用于安全性。
我在浏览器中的所有程序运行中都没有出现任何错误,但每当我检查数据库后,在运行代码后没有输入任何条目。我错过了什么吗?
<html>
<head>
</head>
<body>
<form action="register_development_file_1b.php" method="post">
Email: <input type="text" name="email"><br />
Date: <input type="text" name="date"><br />
Time: <input type="text" name="time"><br />
<input type="submit" name="submit">
</form>
<?php
if(isset($_POST['submit']))
{
$con = mysql_connect("localhost","username","password") or die(mysql_mysql);
mysql_select_db("databasename", $con) or die(mysql_query("databasename", $con));
$email = mysql_real_escape_string($_POST['email']);
$date = mysql_real_escape_string($_POST['date']);
$time = mysql_real_escape_string($_POST['time']);
$sql = "INSERT INTO
signups ('signup_email_address', 'signup_date','signup_time')
VALUES ('".$email."','".$date."','".$time."')";
mysql_query($sql, $con) or die(mysql_error());
mysql_close($con);
}
?>
</body>
</html>
答案 0 :(得分:2)
您的SQL查询中存在拼写错误。然后,('signup_email_address', 'signup_date','signup_time')
之间不得写入''
字段的名称。这仅用于字符串中的值,而不是字段,表,模式或其他任何名称。如果你想把它们放在引号之间,请使用`代替。
答案 1 :(得分:1)
正确来自:
$sql = "INSERT INTO
signups ('signup_email_address', 'signup_date','signup_time')
VALUES ('".$email."','".$date."','".$time."')";
要:
$sql = "INSERT INTO
signups (signup_email_address, signup_date,signup_time)
VALUES ('".$email."','".$date."','".$time."')";
试试吧。我认为它应该有用。
答案 2 :(得分:0)
查询应如下所示
$sql = "INSERT INTO
signups (signup_email_address, signup_date,signup_time)
VALUES ('$email','$date','$time')";