Ich habe eine Anwendung, in der Fragen in Fragezeilen hinzugefügt werden. Ich habe jedoch ein Problem, wenn es darum geht, Werte in die Datenbank einzufügen.Es fügt diese Zahlen nicht korrekt in die Datenbank ein
ich meine Bewerbung, wenn ich 2 Fragen hinzufügen dann sieht es aus diesem unten wie:
SessionId QuestionId QuestionContent
ABV 1 What is 2+2?
ABV 2 What is 3+3?
Aber wenn ich diese Werte in der Datenbank hinzufügen, dann fügt sie es wie folgt aus:
SessionId QuestionId QuestionContent
ABV 3 What is 2+2?
ABV 3 What is 3+3?
Das Problem besteht darin, dass die nächste Frage nach den hinzugefügten Nummern eingefügt wird, in diesem Fall die Zahl "3". Wie kann ich die richtigen Fragezahlen wie das erste Beispiel in der Datenbank hinzufügen?
Unten ist die INSERT VALUES Code, den ich derzeit haben:
$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);
Unten ist die Javascript-Code, der die Frage Zahlen in den Tabellenzeilen in der Anwendung (ich die sessionId und Fragen in den Anhängen nicht enthalten fügt Code unten)
<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>
'var_dump ($ _ POST) zurückgegeben werden;' –
Welche Anfragen kommen aus 'echo ($ questionsql);'? – CodeCaster
@CodeCaster die Abfrage kommt heraus $ questionsql ist das, wenn ich versuche, 2 Fragen in die Datenbank einzufügen: 'INSERT INTO Frage (SessionId, QuestionId, QuestionContent) VALUES ('ABV', '3', 'Was ist 2 + 2? '), (' ABV ',' 3 ',' Was ist 3 + 3? ') ' – user1304948