PHP MYSQL:如何保持变量活着直到连接结束

时间:2011-05-20 10:59:02

标签: 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的页面中。我怎么能这样做????

3 个答案:

答案 0 :(得分:1)

使用

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

echo $_SESSION['myvar']; 

可以访问任何页面

答案 1 :(得分:1)

如果您想在另一个页面中再次访问所有数据,我建议您在会话中存储从mysql表中检索数据所需的信息,而不是查询结果。这意味着您的会话空间中没有大量繁琐的数据。例如。

想象一下,我有一个人员表,想要在不同的页面上获取该人的信息,我只是将person_id存储在会话中,如下所示:

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

然后在任何页面上我想要检索人员信息我只是从会话中获取人员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
}

答案 2 :(得分:0)

tc.php中再次获取数据 - 这是我认为最好的方法。

您也可以将该数据设置为会话,并在tc.php中从那里获取。