2016-04-09 7 views
0

私はセッション変数を介してページ「add_attendance.php」からラジオボタンの値を取得し、ここで 「store_attendance.php」でそれを処理しようとしていますがadd_attendance.phpは、セッション変数の取得一つの値だけ

のコードです
if (mysqli_num_rows($result) > 0) 
        { 
         $radio = 1; 

         while ($row = mysqli_fetch_assoc($result)) 
         { 

          $radio_arr = array(); 
          array_push($radio_arr, $radio); 

         $name_array[] = $row["Name"]; 
         $_SESSION['name_array'] = $name_array; 
         $roll_array[] = $row["RollNo"]; 
         $_SESSION['roll_array'] = $roll_array; 

          $_SESSION['radioKeys'] = $radio_arr; 
          isset($radio); 

ラジオボタンの値を取得して出力する「store_attendance.php」のコードです。

<?php 

session_start(); 
$posted = array(); 

if(isset($_SESSION['username']) && isset($_SESSION['password'])) 
{ 

        var_dump($_SESSION['name_array']); echo "<br>"; 
        var_dump($_SESSION['roll_array']);echo "<br>"; 
        //var_dump($_SESSION['radioKeys']); 

         foreach ($_SESSION['radioKeys'] as $radioKey) { 
          # code... 
         if (isset($_POST[$radioKey])) { 
          $posted[$radioKey] = $_POST[$radioKey]; 
          } 
         } 

         $_SESSION['radio'] = $posted; 
         foreach ($_SESSION['radio'] as $radioKey => $radioValue) 
         { 
           var_dump($radioValue); 
         } 
} 

iを得る出力

array(2) { [0]=> string(9) "Dhatchana" [1]=> string(6) "Deepak" } 
array(2) { [0]=> string(1) "1" [1]=> string(1) "2" } 
array(1) { [0]=> int(2) } **string(7) "present"** 

列(7) "本" iは2つ目のラジオボタンで選択した値です。しかし、私は両方の値が欲しい。私はここで間違って何をしていますか?前もって感謝します。

+0

を働いていましたか? btw、これは危険です '$ _SESSION ['password']'、セッションにパスワードを保存すべきではありません。 –

+0

がセッションを開始しました。しかし、ここにコードには含まれていません。 ** $ _ SESSION ['radioKeys'] = $ radio; **を使用するだけで完璧にうまくいきました。しばらくしてstore_attendance.phpページの "foreach()に対して無効な引数が返されました。だから私は配列 '$ radio_arr = array(); array_push($ radio_arr、$ radio) ' – Naveen

+0

1つのキーに格納するので、最後の項目だけがセッションに保存されます –

答えて

0

これは、コードの最初のブロックでセッションを開始しませんでした私のため

`if (mysqli_num_rows($result) > 0) 

      { 
       $radio = 1; 

        $radio_arr = array(); 



       while ($row = mysqli_fetch_assoc($result)) 
       { 

        array_push($radio_arr, $radio); 


        $name_array[] = $row["Name"]; 
        $_SESSION['name_array'] = $name_array; 
        $roll_array[] = $row["RollNo"]; 
        $_SESSION['roll_array'] = $roll_array; 



        $_SESSION['radioKeys'] = $radio_arr; 
        isset($radio_arr);` 
関連する問題