Php 未在数据库中正确插入这些数字
我有一个应用程序,它将问题添加到问题行中。但在数据库中插入值时,我遇到了一个问题 如果我在应用程序中添加了两个问题,则如下所示:Php 未在数据库中正确插入这些数字,php,mysql,Php,Mysql,我有一个应用程序,它将问题添加到问题行中。但在数据库中插入值时,我遇到了一个问题 如果我在应用程序中添加了两个问题,则如下所示: SessionId QuestionId QuestionContent ABV 1 What is 2+2? ABV 2 What is 3+3? 但如果我在数据库中添加这些值,它会像这样插入: SessionId QuestionId QuestionContent
SessionId QuestionId QuestionContent
ABV 1 What is 2+2?
ABV 2 What is 3+3?
但如果我在数据库中添加这些值,它会像这样插入:
SessionId QuestionId QuestionContent
ABV 3 What is 2+2?
ABV 3 What is 3+3?
问题在于,它将在已添加的问题编号之后插入下一个问题编号,在本例中是编号“3”。如何在数据库中添加正确的问题编号(如第一个示例)
以下是我目前拥有的插入值代码:
$insertquestion = array();
foreach($_POST['questionText'] as $question)
{
$insertquestion[] = "' ". mysql_real_escape_string( $_SESSION['id'] ) . "' , ' ". mysql_real_escape_string( $_POST['num_questions'] ) . "', ' ". mysql_real_escape_string( $question ) . "'";
}
$questionsql = "INSERT INTO Question (SessionId, QuestionId, QuestionContent)
VALUES (" . implode('), (', $insertquestion) . ")";
echo($questionsql);
下面是javascript代码,它将问题编号添加到应用程序的表行中(我没有在下面的代码中添加sessionId和问题)
函数insertQuestion(form){
变量$tbody=$(“#qanadbl>tbody”);
var$tr=$(“”);
变量$qid=$(“”+qnum+“”);
$tr.append($qid);
$tbody.append($tr);
++qnum;
$(“#questionNum”).text(qnum);
$(“#num_问题”).val(qnum);
问题1
如果您只是在phpMyAdmin中使用DELETE*FROM tableName
或EMPTY函数(从tableName
中执行DELETE*FROM tableName
),这是正常的,您只需使用自动增量
进行索引,并且当您上次删除表中的所有记录时,自动增量
id>将被保留
如果
TRUNCATE
此表auto_increment\u id
将返回1。从echo($questionsql);
?@CodeCaster出来的查询$questionsql是这样的,如果我尝试在数据库中添加两个问题:插入问题(SessionId,QuestionId,QuestionContent)值('ABV','3','What is 2+2?'),('ABV','3','What is 3+3?)
@user1304948,因为您将$\u POST['num_questions']
插入到ID列中,所以您可以看到该查询将两个ID都插入为3。
<script>
function insertQuestion(form) {
var $tbody = $('#qandatbl > tbody');
var $tr = $("<tr class='optionAndAnswer' align='center'></tr>");
var $qid = $("<td class='qid'>" + qnum + "</td>");
$tr.append($qid);
$tbody.append($tr);
++qnum;
$("#questionNum").text(qnum);
$("#num_questions").val(qnum);
</script>
<form id="QandA" action="insertQuestion.php" method="post" >
<input type="hidden" id ="num_questions" value="" name="num_questions">
<div id="detailsBlock">
<table id="question">
<tr>
<th colspan="2">
Question Number <span id="questionNum">1</span>
</th>
</tr>
</table>
</form>