2016-04-14 15 views
0

可変データを配列に格納してから配列に配列する際に問題が発生します。一度だけ0のインデックスで配列に値が格納されますが、次のページが次のボタンにロードされたときに次のテストをロードする場合は、配列の値が上書きされます。それが提出されている場合は変数データを配列に格納する

<?php session_start(); 
$cat_name = $_POST["cat_name"]; 
$which_test_id = $_POST["which_test_id"]; 
echo $correct = $_POST["correct"]; 
$answers[] = array('correct' => $correct); 
$_SESSION["results"] = $answers; 
print_r($_SESSION["results"]); ?> 
+2

「[]」表記の配列に追加する –

+0

@SaurabhSinha彼は持っています。 – Tom

答えて

2

ちょうどその値が

<?php session_start(); 
if(isset($_POST['submit'])) 
{ 
$cat_name = $_POST["cat_name"]; 
$which_test_id = $_POST["which_test_id"]; 
echo $correct = $_POST["correct"]; 
$answers[] = array('correct' => $correct); 
$_SESSION["results"] = $answers; 
} 
print_r($_SESSION["results"]); ?> 
0

をセットする前に、答えを得ますアレイ。

2.データが最初に設定されたかどうかをチェックしなかったため、データが上書きされます。

<?php 
ini_set('session.cookie_domain',"localhost"); 
session_start(); 
if(isset($_POST['submit'])) 
{ 
    $cat_name = $_POST["cat_name"]; 
    $which_test_id = $_POST["which_test_id"]; 
    echo $correct = $_POST["correct"]; 
    $answers = array('correct' => $correct); 
    if(!isset($_SESSION["results"])) 
    { 
     $_SESSION["results"] = $answers; 
    } 
} 
print_r($_SESSION["results"]); ?> 
+0

hmmmmmmmmmmmmmmmmm –

+0

あなたはあなたの答えを得ましたか? –

0

1.Youは "[]" を宣言しながら、必要はありません示し:)

<?php session_start(); 
$cat_name = $_POST["cat_name"]; 
$which_test_id = $_POST["which_test_id"]; 
echo $correct = $_POST["correct"]; 
$answers = (array_key_exists("results", $_SESSION)) ? $_SESSION["results"] : array(); 
$answers[] = array('correct' => $correct); 
$_SESSION["results"] = $answers; 
print_r($_SESSION["results"]); 
?> 
関連する問題