【发布时间】:2013-06-22 23:50:15
【问题描述】:
所以我正在做一些关于使用 php 创建在线表单的自学。
在我的第一页我有以下内容:
<!doctype html>
<html>
<head>
<title> Hi </title>
</head>
<body>
<form method="POST" action="Page2.php">
Username: <input type="text" name="username" >
Password: <input type="text" name="password" >
<input type="submit" name="submit" value="submit">
</body>
</html>
在我的第二页 (Page2.php):
<?php
if($_POST["submit"] == "submit")
{
$username=$_POST["username"];
$password=$_POST["password"];
$db = mysql_connect("localhost","root","root");
if(!$db) die("Error connecting to MySQL database.");
mysql_select_db("testdatabase" ,$db);
$sql="INSERT INTO testdatabase_table ('username', 'password') VALUES (". PrepSQL($username) . "," . PrepSQL($password) . ")";
$query=mysql_query($sql);
echo $query;
if(!$query)
{
echo "Failed".mysql_error();
}
exit();
}
function PrepSQL($value)
{
// Stripslashes
if(get_magic_quotes_gpc())
{
$value = stripslashes($value);
}
// Quote
$value = "'" . mysql_real_escape_string($value) . "'";
return($value);
}
?>
这是我得到的错误: 失败您的 SQL 语法有错误;检查与您的 MySQL 服务器版本相对应的手册,以在第 1 行的 ''username', 'password') VALUES (' ', ' ')' 附近使用正确的语法
任何快速的建议将不胜感激,谢谢。
【问题讨论】:
-
顺便说一句:mysql extension is deprecated。考虑切换到MySQLi 或PDO 并使用准备好的语句。
标签: php sql forms insert-into