我的网站上有以下 PHP 代码/文件,但由于某些不正当的原因,它不会按要求将用户输入的记录插入到 mySQL 数据库表中。谁能告诉我这是为什么?
据我所知,代码是完全正确的,我不知道为什么会发生这种情况......
请帮助...代码如下...
<html>
<head>
</head>
<body>
<form action="register_development_file_1.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");
if (!$con)
{
die("Could not connect to the database: " . mysql_error());
}
mysql_select_db("wwwbrecs_BREC",$con);
$sql = "INSERT INTO 'signups' ('signup_email_address', 'signup_date', 'signup_time') VALUES ('$_POST[email]','$_POST[date]','$_POST[time]')";
mysql_query($sql,$con);
mysql_close($con);
}
?>
</body>
</html>
有一个syntax查询中出现错误,不应使用引号将表名称和列引起来'
,至少你可以使用反引号`
INSERT INTO 'signups' ('signup_email_address', 'signup_date','signup_time')
应该
INSERT INTO signups (signup_email_address, signup_date, signup _time) VALUES
Or
INSERT INTO `signups` (`signup_email_address`, `signup_date`, `signup _time`) VALUES
只有值(实际上不是整数列的整数)才应该用引号引起来'
.
那么我想记住你mysql_
函数已被弃用,所以我建议您切换到mysqli http://php.net/manual/en/book.mysqli.php or PDO http://php.net/manual/en/book.pdo.php事实上,你面临着以下风险:sql injection
,看这里如何防止 PHP 中的 SQL 注入? https://stackoverflow.com/questions/60174/how-to-prevent-sql-injection-in-php。您应该使用准备好的语句以避免任何风险
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)