繁体   English   中英

在PHP SQL关系中需要帮助

[英]Need help in PHP SQL relationship

我创建了一个包含quest_id和question列的表,并尝试使用PHP代码更新它们,但是我代码中只有最后一条语句实际上是在更新该表,我的意思是实际上最后一条update命令有效,有没有办法更新它们,还是有人可以帮助我解决当前错误?

<?php
     $servername = "localhost";

    $con = mysqli_connect("localhost","dnm","dnm","login1");

    // Check connection
    if (mysqli_connect_errno())
    {
    echo "Failed to connect to MySQL: " . mysqli_connect_error();
    }

    $q = array($_POST['q1'],$_POST['q2'], $_POST['q3'], $_POST['q4'], $_POST['q5'], $_POST['q6'], $_POST['q7'], $_POST['q8'], $_POST['q9'], $_POST['q10'], $_POST['q11'], $_POST['q12'], $_POST['q13'], $_POST['q14'], $_POST['q15'] );


    if($q[0] == '' OR $q[1] == '' OR $q[2] =='' OR $q[3] =='' OR $q[4] == '' OR $q[5] == '' OR $q[6] == '' OR $q[7]== '' OR $q[8] == '' OR $q[9] == '' OR $q[10] == '' OR $q[11] == '' OR $q[12] == '' OR $q[13] == '' OR $q[14] == ''){

         echo "<script>alert('Not all the questions are finished')</script>";
         echo"<script>window.open('class.html','_self')</script>";

      }
        else {


            $sql= "UPDATE login1.questions SET question = '$q[0]' WHERE questions.quest_id = 1";
            $sql= "UPDATE login1.questions SET question = '$q[1]' WHERE questions.quest_id = 2";
            $sql= "UPDATE login1.questions SET question = '$q[2]' WHERE questions.quest_id = 3";
            $sql= "UPDATE login1.questions SET question = '$q[3]' WHERE questions.quest_id = 4";
            $sql= "UPDATE login1.questions SET question = '$q[4]' WHERE questions.quest_id = 5";
            $sql= "UPDATE login1.questions SET question = '$q[5]' WHERE questions.quest_id = 6";
            $sql= "UPDATE login1.questions SET question = '$q[6]' WHERE questions.quest_id = 7";
            $sql= "UPDATE login1.questions SET question = '$q[7]' WHERE questions.quest_id = 8";
            $sql= "UPDATE login1.questions SET question = '$q[8]' WHERE questions.quest_id = 9";
            $sql= "UPDATE login1.questions SET question = '$q[9]' WHERE questions.quest_id = 10";
            $sql= "UPDATE login1.questions SET question = '$q[10]' WHERE questions.quest_id = 11";
            $sql= "UPDATE login1.questions SET question = '$q[11]' WHERE questions.quest_id = 12";
            $sql= "UPDATE login1.questions SET question = '$q[12]' WHERE questions.quest_id = 13";
            $sql= "UPDATE login1.questions SET question = '$q[13]' WHERE questions.quest_id = 14";
            $sql= "UPDATE login1.questions SET question = '$q[14]' WHERE questions.quest_id = 15";

        echo "<script>alert('Success!')</script>";} 

    if (mysqli_query($con, $sql)) {
    echo "Record updated successfully";
    } else {
    echo "Error updating record: " . mysqli_error($con);
    }

    mysqli_close($con);
?>

您仅执行最后一个查询。 使用它代替$sql所在的大量代码。

for ($i = 1; $i <= 15; $i++) {
      $sql= "UPDATE login1.questions SET question = '".$q[($i - 1)]."' WHERE questions.quest_id = " . $i;
      mysqli_query($con, $sql);
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

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