0

対応する編集項目を更新できません。最初の質問と回答のみが更新されています。欲しい結果が得られない。私はこれに1日立ち往生しています。私を助けてください。

シナリオは次のとおりです。フォームを含む php ファイルがあり、それを別の php ファイルに渡します。データベースから質問を編集できる質問 ID とテキストボックスを含むチェックボックス。すべての質問には、対応する回答があります。また、それらを編集することもできます。更新ボタンをクリックすると、チェックしたすべての質問が更新されます。しかし、それらのすべてが更新されるわけではありません。文字通り、最初の質問だけが更新できる唯一の項目です。誰でも私のコードの何が問題なのか知っていますか??

スクリーンショットのリンクはこちらhttp://imageshack.us/photo/my-images/706/cetw.png/

私のコードは次のとおりです。

$selected = $_POST['selected'];///the checkbox
$question = $_POST['questiondesc'];


for ($i = 0; $i < sizeof($selected); $i++)
{
    $sql = sprintf("UPDATE exam_questions SET question_description = '%s' WHERE question_id = '%s'", 
           mysql_real_escape_string($question[$i]), 
           mysql_real_escape_string($selected[$i]));
    mysql_query($sql)or die(mysql_error());

    $eren = mysql_query("SELECT * FROM exam_answers WHERE answer_question_set_id = '".$selected[$i]."'")or die(mysql_error());
    while($mikasa = mysql_fetch_array($eren)){}
    $count = mysql_num_rows($eren);

        $answer = $_POST['answerdesc'];
        $answerid = $_POST['ansid'];///answer id



           for($e = 0; $e<$count; $e++){

           $gomugomu = sprintf("UPDATE exam_answers SET answer_description = '%s' WHERE answer_id = '%s'",
           mysql_real_escape_string($answer[$e]), 
           mysql_real_escape_string($answerid[$e]));
           mysql_query($gomugomu)or die(mysql_error());
        }
4

1 に答える 1

0

ページのプリントスクリーンなどがないと理解するのは少し混乱しますが、複数のチェックボックスを同時に選択できるページがあるように思えますが、$_POST.

その場合は、配列を介して質問の ID を送信する必要があります。この受け入れられた回答を見て、それがどのように行われるかを確認してください: PHP $_POST get data array

于 2013-08-28T12:07:20.627 に答える