2016-04-13 8 views
0

私は評価プロジェクトに取り組んでいます。質問を表示し、それぞれの質問は複数回答で表示します。質問の答えは私の問題は、私はここに、このダイナミックな名前の変数からコードの例のデータを抽出する方法がわからないで、動的に命名:PHPを使用して動的な命名変数から値を取得

<input type="hidden" name="question_id[]" value="<?php echo $id; ?>" /> 
<?php foreach($answers as $answer) { ?> 
<input id="optionsVisa" type="radio" name="answer<?php echo $answer['question_id'];?>" value="<?php echo $answer['fraction']; ?>"/> <?php echo $answer['answer']; ?> 
<?php } ?> 

任意のヘルプ?

+0

データを取得しようとしたコードを表示します。 – RJParikh

+0

あなたはjavascriptで抽出したいですか? –

+0

PHPを使ってPOSTメソッドを使って送信されたフォームから回答を抽出したい – hany

答えて

0

私は問題を解決:皆のため

foreach($question_id as $key=>$value){ 
    $answer = isset($_POST['answer_'.$value]) ? $_POST['answer_'.$value] : ''; 
    $query = "insert into 
    .... 
    } 

おかげで、私を助けようとしました。

0

あなただけの提出を使用することができる必要があり、その後、あなたがあなたの入力のまわりのフォームを作っていると仮定すると、あなたの$_GET$_POST変数でそれらを持つことになります後

提出し、POSTメソッドでフォームを使用して送信された値$_POST変数echo $_POST['answer2'];

+0

ユーザーはjavascript、jqueryというタグを付けていません。 – RJParikh

+0

@RuchishParikh trueですが、それは解決策である可能性があります、私はちょっと名前をつけてそれを使用することを提案して少し私の答えを編集しました – Jester

+0

私はPHPで答えが必要です – hany

0

私はあなたに役立つサンプルコードを作成しました。最初に、あなたは一つの答えの選択のためにグループ化する必要があるので、すべての人に同じ名前を変える必要があります。

ここで入力タイプ名はname="optionsVisa"で、idは動的id="answer_<?php echo $answer['question_id'];?>"になります。

optionVisaアレイで選択された回答が1つ表示されます。下記のコードを確認してください。

サンプルコード

<?php 
$answers = array(
    '0' => array('question_id' => '1', 'fraction' => '1', 'answer' => 'test answer 1'), 
    '1' => array('question_id' => '2', 'fraction' => '2', 'answer' => 'test answer 2'), 
    '2' => array('question_id' => '3', 'fraction' => '3', 'answer' => 'test answer 3') 
); 
?> 

<form id="test" action="" method="post"> 
<input type="hidden" name="question" value="<?php echo 1; ?>" /> 
<?php 
    foreach($answers as $answer) { ?> 
    <input name="optionsVisa" type="radio" id="answer_<?php echo $answer['question_id'];?>" value="<?php echo $answer['fraction']; ?>"/> <?php echo $answer['answer']; ?> 
<?php } ?> 
    <input type="submit" name="submit" value="submit_form> 
</form> 

<?php 
echo "<pre>"; 
print_r($_POST); 
?> 

出力

Question Id = 1 
Answer Id = 3 

Question Id = 1 
Answer Id = 3 

Array 
(
    [question] => 1 
    [optionsVisa] => 3 
    [submit] => submit_form 
) 
+0

これはあなたにとって有益です。 @hany – RJParikh

関連する問題