1
我创建了一个脚本,从数据库获取信息并使用PHP自动将其导入到表中并创建表单。在表单中,我通过数据库中包含的任何数据来命名字段。我在查询的值部分插入表单值到数据库时遇到问题,因为我不知道如何循环并添加所有输入字段。我将如何做到这一点?通过循环插入值到数据库
while ($aRow = mysql_fetch_assoc($aResult)) {
if ($aRow['correct'] == 1) {
$tableString .= "<input name=". $qRow['questionID'] ."
type='radio'
>" .
$aRow['answerValue'] . "<br />";
} else {
$tableString .= "<input name=". $qRow['questionID'] ."
type='radio'
>" .
$aRow['answerValue'] . "<br />";
}
$answer= [$aRow];
$question= [$qRow];
$student= [$username];
// Insert data into mysql
//$sql="INSERT INTO $userexam(answerID, questionID, userID)VALUES('$answer', '$question', '$student')";
//$result=mysql_query($sql);
$query = " INSERT INTO userexam (
answerID,
questionID,
userID)
VALUES ('" . $_POST['/* answerID */'] . "', '" .
$_POST['/* questionID */'] . "', '" .
$_POST['/* userrole */'] . "')";
}
请停止使用'mysql_ *'功能。他们已经被弃用了2年多,他们将不再使用PHP 7+。您的代码可以广泛应用于[SQL注入](https://en.wikipedia.org/wiki/SQL_injection)。这基本上意味着你的网站的任何访问者只需要不到一分钟的时间就可以对数据库做任何他们想做的事情。这包括摧毁它。 Considder使用[MySQLi](http://php.net/manual/en/book.mysqli.php)或[PDO](http://php.net/manual/en/book.pdo.php)代替与[预备声明](https://en.wikipedia.org/wiki/Prepared_statement)。 – icecub