我试图运行带有多个插入的mysqli_query,但它不起作用

时间:2017-07-24 11:25:42

标签: php mysql post mysqli

我的代码如下:我试图使用mysqli_query一次插入多个插入数据库,我该怎么做呢?

$sql = "INSERT INTO  questions (exam_type, questions, option_a, option_b,  option_c, answer) 
        VALUES  ('$q_type', '$q1', '$q1a', '$q1b', '$q1c', '$q1answer' );
        INSERT INTO  questions (exam_type, questions, option_a, option_b,  option_c, answer) 
        VALUES  ('$q_type', '$q2', '$q2a', '$q2b', '$q2c', '$q2answer' );
        INSERT INTO  questions (exam_type, questions, option_a, option_b,  option_c, answer) 
        VALUES  ('$q_type', '$q3', '$q3a', '$q3b', '$q3c', '$q3answer' );
        INSERT INTO  questions (exam_type, questions, option_a, option_b,  option_c, answer) 
        VALUES  ('$q_type', '$q4', '$q4a', '$q4b', '$q4c', '$q4answer' );
        INSERT INTO  questions (exam_type, questions, option_a, option_b,  option_c, answer) 
        VALUES  ('$q_type', '$q5', '$q5a', '$q5b', '$q5c', '$q5answer' )

";

echo $sql ."<br>";
require "connect.php";

if($results= mysqli_query($con, $sql))
{

    echo "saved successfully";

}

3 个答案:

答案 0 :(得分:1)

试试这个查询:

INSERT INTO questions (exam_type, questions, option_a, option_b,
    option_c, answer) VALUES ('$q_type', '$q1', '$q1a', '$q1b', '$q1c',
    '$q1answer' ), ('$q_type', '$q2', '$q2a', '$q2b', '$q2c',
    '$q2answer' ), ('$q_type', '$q3', '$q3a', '$q3b', '$q3c',
    '$q3answer' ),('$q_type', '$q4', '$q4a', '$q4b', '$q4c', '$q4answer'
    ),('$q_type', '$q5', '$q5a', '$q5b', '$q5c', '$q5answer' )

答案 1 :(得分:0)

SQL部分应该是这样的。

$sql = "INSERT INTO questions (exam_type, questions, option_a, option_b, option_c, answer) 
        VALUES ('$q_type', '$q1', '$q1a', '$q1b', '$q1c', '$q1answer' ),
               ('$q_type', '$q2', '$q2a', '$q2b', '$q2c', '$q2answer' ), 
               ('$q_type', '$q3', '$q3a', '$q3b', '$q3c', '$q3answer' ),
               ('$q_type', '$q4', '$q4a', '$q4b', '$q4c', '$q4answer' ), 
               ('$q_type', '$q5', '$q5a', '$q5b', '$q5c', '$q5answer' )";

PHP部分没问题。

答案 2 :(得分:-2)

对于这样的SQL命令中的多个语句,应使用mysqli_multi_querymysqli_query仅适用于单个语句。