将检查的正确答案和未正确(未经检查)的答案添加到数据库中

时间:2014-11-09 19:05:25

标签: php

我在JS中有动态复选框和动态文本框。动态添加属性'已检查'正在努力。

现在,我如何在PHP中将此已选中和未选中的复选框添加到数据库中?

我试过但它不起作用:

$Odp_poprawne=count(preg_grep('/^poprawnosc[\d]*/', array_keys($_POST)))+1;

            $liczba = count(preg_grep('/^odp[\d]*/', array_keys($_POST)))+1;

        for ($i=1; $i < $liczba; $i++) {

             //always sanitize your user data

            if (isset($_POST["poprawnosc".$i])) {
              $poprawnosc2 = mysqli_real_escape_string($sqlc,"YES");
            }
            else
            {
              $poprawnosc2 = mysqli_real_escape_string($sqlc,"NO");
            }
             $odpowiedz2 = mysqli_real_escape_string($sqlc,$_POST["odp".$i]);


             $sql_wprowadz_odpowiedz="INSERT INTO odpowiedzi (Tresc_odpowiedzi, Poprawnosc, ID_pytania) VALUES ('$odpowiedz2', $poprawnosc2, '$row[ID_pytania]')";  //dodawanie kolejnych odpowiedzi do bazy

             mysqli_query($sqlc,$sql_wprowadz_odpowiedz);
        }
        echo "<script type='text/javascript'>alert('Pytanie dodano.');</script>";
        header('Refresh: 0;url=edytuj_pytanie.php');

我想添加所有答案,并选择正确的答案(&#39;是&#39;)和不正确的答案(&#39; NO&#39;)到数据库。

1 个答案:

答案 0 :(得分:0)

$ poprawnosc2需要在引号之间,因此您的查询应该是:

 $sql_wprowadz_odpowiedz="INSERT INTO odpowiedzi (Tresc_odpowiedzi, Poprawnosc, ID_pytania) VALUES ('$odpowiedz2', '$poprawnosc2', '$row[ID_pytania]')";  //dodawanie kolejnych odpowiedzi do bazy

请注意:我不会使用&#34;是&#34;和&#34;不&#34;为了那个原因。我会使用布尔值(0 = false,1 = true),因此0表示该框未被检查,1表示它是。