[英]Store array data to mySQL database using PHP
我正在尝试将数组存储到mySQL表。 我的表格有6列(问题,选择1-4,正确)。 我使用数组保存从HTML表单输入的数据。 我使用for循环来获取每种形式的每个数据。 (每种形式的问题都有4个选择和正确的答案)。 我的PHP代码:
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "q-a";
// Create connection
$conn = mysqli_connect($servername, $username, $password, $dbname);
// store question and answer
for ($i=0, $i < count($_POST['q1'], $i++){
$question = $_POST['q1'][$i];
$choice1 = $_POST['c1'][$i];
$choice2 = $_POST['c2'][$i];
$choice3 = $_POST['c3'][$i];
$choice4 = $_POST['c4'][$i];
$correct = $_POST['ca'][$i];
$store_question = "INSERT INTO quiz (question, choice1, choice2, choice3, choice4, correct) VALUES ('$question', '$choice1', '$choice2', '$choice3', '$choice4', '$correct')";
$result_get_question = mysqli_query($conn, $store_question);
}
$conn->close();
?>
没事 有人可以发现我在哪里错。 我们需要使用serialize()函数吗?
错误1 :您在forloop
中的count()
函数中错过了)
错误2 :您在循环中使用了错误的语法。 你必须使用;
而不是,
更新的代码:
for ($i=0; $i < count($_POST['q1']); $i++){
$question = $_POST['q1'][$i];
$choice1 = $_POST['c1'][$i];
$choice2 = $_POST['c2'][$i];
$choice3 = $_POST['c3'][$i];
$choice4 = $_POST['c4'][$i];
$correct = $_POST['ca'][$i];
$store_question = "INSERT INTO quiz (question, choice1, choice2, choice3, choice4, correct) VALUES ('$question', '$choice1', '$choice2', '$choice3', '$choice4', '$correct')";
$result_get_question = mysqli_query($conn, $store_question);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.