sql >> データベース >  >> RDS >> Mysql

HTMLフォームから動的な値を選択してPHP変数に保存する

    このように質問IDを投稿するだけでよいと思います:

    <input type="hidden"  name="q1" value="'$q1'">
    

    $opt1=$_POST["answer$q1"]; 
    

    追加する必要があります:

    $q1=$_POST["q1"];
    if (is_numeric($q1)) {
        $query = mysql_query("SELECT * FROM `microsoftq` WHERE QNo=".$q1);
        $rows1 = mysql_fetch_array($query);
        $ans1 = $rows1['Ans']; 
    }
    

    完全なコード

    // Build Form   
    $nbQuestion = 2;
    $form = '<form id="form1" name="quest" method="POST" action="" >';
    $form .= getQuestion("SELECT * FROM `microsoftq`  ORDER BY RAND() LIMIT ".$nbQuestion);
    $form .= '<input type="submit" id="submit_id" name="SUBMIT" value="SUBMIT"></form>';
    
    // Save answer
    if (isset($_POST['SUBMIT'])) 
    {
        for($i=1;i<=$nbQuestion;$i++){
            saveAnswer($i);
        }
    }
    function getQuestion($query){
        $question = "";
        $i = 1;
        $result = mysql_query($query);
        while ($row = mysql_fetch_object($result)) {
            $question .= "<b>Question:-<br></b>".$row->Question." <br><br>";
            $question .= "<input type='hidden' name='q".$i."' value='".$row->QNo."'>";
            $question .= "<input type=radio name = 'answer".$row->QNo."' value = '".$row->Opt1."'></input>$a1 &nbsp &nbsp<br>"; 
            $question .= " <input type=radio name = 'answer".$row->QNo."' value = '".$row->Opt2."'></input>$b1 &nbsp &nbsp<br>"; 
            $question .= " <input type=radio name = 'answer".$row->QNo."' value = '".$row->Opt3."'></input>$c1 &nbsp &nbsp <br>"; 
            $question .= " <input type=radio name = 'answer".$row->QNo."' value = '".$row->Opt4."'></input>$d1 <br><br> ";
            $i++;
        }
        mysql_free_result($result);
    }
    function saveAnswer($nb){
        $qId=$_POST["q".$nb];
        if (is_numeric($qId)) {
            $query = mysql_query("SELECT * FROM `microsoftq` WHERE QNo=".$qId);
            $rows1 = mysql_fetch_array($query);
            $ans = $rows1['Ans'];
            $opt = $_POST["answer".$qId];
            if($ans==$opt)
            {
                $val="ct";
            }
            else
            {
                $val="wg";
            }
            mysql_query("insert into $username values('$qId','$opt','$val')")
            or die(mysql_error());
        }
    }
    ?>
    



    1. mysql 5.0はnull値にインデックスを付けますか?

    2. PythonはMySQLテーブルをSQLite3にコピーします

    3. MYSQLテーブルを永続的な方法でソートする方法は?

    4. テーブルの結合についてもう一度サポートが必要