2013-08-26 82 views
-3

我有我的會話變量存儲陣列:會話陣列相呼應,只有最後一個元素

$outputs = array(); 
while($row = mysql_fetch_array($query)) 
{ 

    $_SESSION['row_id'] = $row['id']; 
    $outputs = $row['sport_ime'].' '.$row['sezona'].'<a href=../view/modifikacije.php> Edit</a><br>'; 
    $_SESSION['output'] = $outputs; 

} 

然後在另一頁上我稱之爲變量:

$outputs = $_SESSION['output']; 
echo ($outputs); 

它只是呼應一行。這是我的數據庫中的最後一項。

它爲什麼不反映一切?

+3

您反覆覆蓋相同的變量...! – deceze

+0

@deceze但我該怎麼辦? – Van

+0

追加到數組而不是覆蓋它! '$ array [] = $ value;' – deceze

回答

1

試試這個

$_SESSION['row_id'][] = $row['id']; 
$_SESSION['output'][] = $outputs; 

請閱讀PHP arrays,一般在手冊時,你就完蛋了。

+0

致命錯誤:[]運算符不支持字符串 – Van

+0

請閱讀我給你的關於php數組的鏈接。還請閱讀堆棧溢出幫助頁面,瞭解哪些問題適合 –

0

你覆蓋相同的session id。使用這樣的:

while($row = mysql_fetch_array($query)) 
{ 
    $outputs = $row['sport_ime'].' '.$row['sezona'].'<a href=../view/modifikacije.php> Edit</a><br>'; 
    $_SESSION[$row['id']] = $outputs; 
} 

回聲它:

$id = 5; 
echo $_SESSION[$id]; // your output 

注意:你應該使用我建議functionreturn array

+0

我想回顯我數據庫中的所有條目 – Van

+0

create function並將所有條目作爲數組返回。不要使用這種類型的會話。 – Bora

相關問題