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


PHP MYSQL : how to keep the variable alive till connection ends

我想让一些变量保持活动状态,以便它可用于网站的所有页面;我尝试了全局,但这不适用于此类问题;我使用以下代码:

 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 . 我该怎么做????

如果您想

在另一个页面中再次访问所有这些数据,我建议您在会话中存储从 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
}

使用

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

将可以访问任何页面

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

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