[英]Multiple SQL insertions in one query
大家好,我很担心,我有一个来自服务器的阵列。 然后将该数组转换为变量。 如:
$fpage = $_SESSION['scores'];
$score1 = $fpage['0'];
$score2 - $fpage['1'];
//Start of Queries
// This is what I would like to do, but Its not working:
$sql ="INSERT INTO Score (ScoreID,ResponseID,AssessorID,CriteriaID,Score,StudentID)"
. "VALUES ('$rand','$rand2','$adminname','1-22','$score1', '$student')";
$new = mysql_query($sql, $db);
$sql2 ="INSERT INTO Score (ScoreID,ResponseID,AssessorID,CriteriaID,Score,StudentID)"
. "VALUES ('$rand','$rand2','$adminname','1-21','$score2', '$student')";
$new1 = mysql_query($sql3, $db);
$sql3 ="INSERT INTO Score (ScoreID,ResponseID,AssessorID,CriteriaID,Score,StudentID)"
. "VALUES ('$rand','$rand2','$adminname','1-21','$score3', '$student')";
$new2 = mysql_query($sql3, $db);
我的问题是,什么是最好的方法? 我试图循环查询,但无法正常工作。 做到这一点的最佳方法是什么?
好吧,在mysql_query
的中间调用中有一个错字-您传入的是$sql3
而不是$sql2
。
另外,您可以执行以下操作:
INSERT INTO Score (ScoreID, ResponseID, AssessorID, CriteriaID, Score, StudentID)
VALUES
(score1, response1, assessor1, criteria1, etc.),
(score2, response2, assessor2, criteria2, etc.),
(score3, response3, assessor3, criteria3, etc.),
etc.
对于所有插入,它将仅一次击中数据库,而不是每次插入一次。
最后,您的代码似乎容易受到SQL注入的攻击。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.