2012-03-29 13 views
0

私のアプリケーションに問題があります。まず先のページで、先生は自分が作成したいセッション(試験)の数を入力し、セッションごとに必要な質問の数を入力します。新しいページに行くときに番号を1に戻す方法

現在のページで、複数のセッションや試験がある場合は、最初の試験に入っていると言いますが、最初の試験の質問番号を追加できます。今私がフォームを提出すれば、それは私を第2セッションに連れて行き、新しい質問番号をゼロから追加しなければならない。質問番号を質問番号に追加しようとすると、質問番号がテーブルに追加されません。

問題の発生場所を把握しました。問題は、以下のコードで発生します。

if (qnum > <?php echo (int)@$_POST['textQuestion']; ?>) { 
    return; 
} 

私は上記の持っているものその後、質問番号を追加しない、追加の質問の数は、前のページに記載された質問の数より多い場合ということです。だから私は2つのセッションを持っていると私はセッションあたり1つの質問をしたいと言うことができます。最初のセッションでは質問番号1が追加されますが、2番目のセッションに入ると、2番目のセッションには質問1と思われますが、2番目のセッションには質問番号1が追加されません。

どのようにすれば、ユーザーが2番目のセッションに行くと、質問番号が1から始まることがわかりますか?以下は

質問番号がテーブルに追加された方法についての完全なコードです:

var qnum = 1; 
    var count = 1; 

    function insertQuestion(form) { 

     if (qnum > <?php echo (int)@$_POST['textQuestion']; ?>) { 
     return; 
    } 


     var $tbody = $('#qandatbl > tbody'); 
     var $tr = $("<tr class='optionAndAnswer' align='center'></tr>"); 
     var $qid = $("<td class='qid'>" + qnum + "</td>"); 

     $tr.append($qid); 
     $tbody.append($tr); 

     count++; 


     $(form).find('.numberOfQuestions').val(qnum); 

     ++qnum; 
     $("#questionNum").text(qnum); 


} 

答えて

0

は$ _POSTの代わりに$ _SESSIONを使用してみてください。とにかく@を使うのは悪い習慣です。

+0

@はまったく必要ありませんか? – user1394925

+0

http://php.net/manual/en/language.operators.errorcontrol.php – Gary

+0

"@"記号は、パーサにエラーを無視させます。あなたのコードでは、文字通り "$ _POST []が設定されていないときにエラーを投げない"と言います。 –

関連する問題