【发布时间】:2010-12-03 06:01:22
【问题描述】:
我想知道这是否一定需要一个数组和/或循环,以及哪些解决方案可以解决这个问题。 作为一个学习练习,我试图将五个变量中的两个插入到 MY SQL 中的两个连续行中。 我在 SQL 中建立了一个简单的表,其中有一列称为 test。我的第一个“INSERT INTO table VALUES ('$Word1')”;语句成功地将值插入第一行。与 $Word2 类似/几乎相同的后续代码不会将值添加到 SQL。我想我必须以某种方式前进到下一行,但我完全不知道如何做到这一点。我搜索了论坛、我的 PHP 书籍和 w3Schools,但都是徒劳的。
/*retrieve user input from separate HTML input form */
/* and initializes variables */
$Word1 = $_POST["Word1"];
$Word2 = $_POST["Word2"];
$Word3 = $_POST["Word3"];
$Word4 = $_POST["Word4"];
$Word5 = $_POST["Word5"];
//select db
mysql_select_db("madlibs", $con);
//insert user input for word 1 into SQL
$sql = "INSERT INTO test (MadWords)
VALUES
('$Word1')";
if (!mysql_query($sql,$con))
{
die('Error: ' . mysql_error());
}
//word 2
/* ***THIS CODE AND MANY VARIATIONS OF IT FAIL TO ENTER $WORD2 INTO SQL*/
"INSERT INTO test (MadWords)
VALUES
('$Word2')";
if (!mysql_query($sql2,$con))
/*I've cut this if statement in other debugging runs with the same result*/
{
die('Error: ' . mysql_error());
}
echo "1 record added";
【问题讨论】:
-
您是否在 $sql2 变量中分配了第二个查询并检查表中的主键?
-
你有自动增量ID吗?
-
小心上述代码中的SQL注入。
-
感谢您的警告。我知道这个概念并且不关心防止这个项目的 sql 注入,因为我知道它会保持在本地。