2013-05-06 120 views
0

在SESSION變量中存儲變量的正確方法是什麼?我想這樣做,但我不認爲我在做正確的事:

$_SESSION['queryID'] = $stID 

// I want to use $stID even after the page is reloaded 
if(isset($_GET['id']) && $_GET['id'] != '') { 
    $stID = $_GET['id']; 
} 

$query = "SELECT * FROM myTable WHERE State = " . $_SESSION['queryID']. ";"; 

會使用這樣一個會話變量允許我保持整個頁面重新加載$ ​​STID的價值?

感謝

+0

你有添加在session_start到頁面頂部? – 2013-05-06 13:24:53

回答

1

1)有一個semicolumn丟失:

$_SESSION['queryID'] = $stID; // <<< at the end of that line 

2)我沒有看到你的文件的頂部任何session_start電話。檢查您是否已開啓會話:

session_start(); 
1

是的,您正在以正確的方式進行操作。但在使用會話變量值之前,請使用isset()函數。

if (!isset($_SESSION['queryID'])) { 
    $_SESSION['queryID'] = 1; 
} 

另外要使用會話,您需要在php腳本的最開始處調用session_start()函數。

0

發現引用是一個新手程序設計任務,兄弟。 PHP有一個巨大的文檔,請閱讀它。

$arr = array("lol"=>"roflmao"); 
$var =& $arr; 
$var["lol"] = "roflmaobbq"; 

print_r($var); 
/* 
Array 
(
    [lol] => roflmaobbq 
) 
*/ 

print_r($arr); 
/* 
Array 
(
    [lol] => roflmaobbq 
) 
*/ 

來源:http://www.php.net/manual/en/language.references.spot.php

0
//if u want to activate session use session_start() 
//u didn't mention what is $stID 
//if u want to store $stID 

    $_SESSION['queryID']="value" 

////////////// 

    <?php 
    session_start(); 

    // I want to use $stID even after the page is reloaded 
    if(isset($_GET['id']) && $_GET['id'] != '') { 

     $_SESSION['queryID']=$_GET['id'] 
    } 

    $query = "SELECT * FROM myTable WHERE State = " . $_SESSION['queryID']. ";"; 

    ?>