繁体   English   中英

使用PHP将数组数据存储到mySQL数据库

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM