2011-05-20 58 views
0

我想保留一些变量,使其可用于网站的所有页面; 我尝试过全球化,但是这并不适用于这类问题; 我使用下面的代码:PHP MYSQL:如何保持变量活着,直到连接结束

while($result1 = mysql_fetch_array($result)) 
    { 
    $adm_no = $result1['adm_no']; 
    $adm_dt = $result1['adm_dt']; 
    $name = $result1['name']; 
    $dob = $result1['dob']; 
    $f_name = $result1['f_name']; 
    $f_office = $result1['f_office']; 
    $f_o_no = $result1['f_o_no']; 
    $m_name = $result1['m_name']; 
    $m_office = $result1['m_office']; 
    $addr = $result1['addr']; 
    $pho_no = $result['pho_no']; 

名为tc.php另一页,这些相同的变量。我怎样才能做到这一点 ????

+0

hmmm尝试之前询问一些事情。会话会帮助你 – 2011-05-20 11:01:39

+0

使用会话,因为别人都在说..加上注意最后一行'$ pho_no = $ result ['pho_no'];',它应该是'$ pho_no = $ result1 ['pho_no'];' – 2011-05-20 11:09:15

回答

1

如果你想再次访问所有的数据在另一个网页,我会建议保存在会话中检索你的MySQL表中的数据所需要的信息而不是查询的结果。这意味着您的会话空间中不会有太多繁琐的数据。例如。

想象我有一个人表,并希望得到的信息位的那个人在不同的页面我只存储为person_id在会话中像这样:我想找回人的任何页面上

//home.php 
$_SESSION['personID'] = $personID; 

然后我只是从会话中获取person id并运行查询以获取我需要的特定信息。

//profile.php 
$personID = $_SESSION['personID']; 

//Get specific information here 

如果你真的不能改变,你正在做这样的方式,我真的很希望你能因为它会让你的生活带来很多的地狱更容易那么就改变你的代码如下:

//make sure that you have started a session at the top of your page before you do anything else 
session_start(); 

while($result1 = mysql_fetch_array($result)) { 
    $_SESSION['adm_no'] = $result1['adm_no']; 
    $_SESSION['adm_dt'] = $result1['adm_dt']; 
    $_SESSION['name'] = $result1['name']; 
    $_SESSION['dob'] = $result1['dob']; 
    //etc 
} 
0

再次获取数据在tc.php - 这是我认为在这种情况下最好的方法。

您也可以将该数据设置到会话中,并在tc.php之后从中获取该数据。

+0

我不能再次获取它..我不能获取数据的变量,我做到了这一点 – ravi 2011-05-20 11:06:47

1

使用

$_SESSION['myvar']= "your value"; 

echo $_SESSION['myvar']; 

将可以访问任何页面