我在網站上有三個頁面。第一個是登錄頁面,第二個是個人資料頁面,第三個是主頁面。使用會話變量或將PHP代碼從第二頁複製到網站的第三頁
<?php
session_start();
$servername="blah blah blah";
$connectioninfo=array('Database'=>'mbr');
$conn=sqlsrv_connect($servername,$connectioninfo);
if($conn)
{
echo 'connection established';
}
else
{
echo 'connection failure';
die(print_r(sqlsrv_errors(),TRUE));
}
$q1="SELECT * FROM EmployeeTable WHERE EmployeeID = '" . $_SESSION['id'] . "' ";
$stmt=sqlsrv_query($conn,$q1);
if($stmt==false)
{
echo 'error to retrieve info !! <br/>';
die(print_r(sqlsrv_errors(),TRUE));
}
$row=sqlsrv_fetch_array($stmt);
echo $row['EmployeeName'];
$q2="SELECT * FROM pointsBadgeTable WHERE EmployeeID = '" . $_SESSION['id'] . "' ";
$stmt1=sqlsrv_query($conn,$q2);
if($stmt1==false)
{
echo 'error to retrieve info !! <br/>';
die(print_r(sqlsrv_errors(),TRUE));
}
$pbrow=sqlsrv_fetch_array($stmt1);
?>
以上是在網站的第二頁中使用的PHP。在這裏,我使用兩個查詢$ q1和$ q2在連接到數據庫「mbr」後從兩個不同的表(EmployeeTable和pointsBadgeTable)中檢索信息。
然後,我從表格中檢索信息後,在我的html中回覆所需的信息。
例如,
<?php echo "". $row['goldTotal'] .""?>>
這裏goldtotal'是pointsBadgeTable在上述的PHP的列。另請注意,我正在使用「。$ _SESSION ['id']」。此處僅顯示有關登錄網站第一頁的人員的信息。
這裏的問題是,我想在第三頁中回顯與第二頁中相同的值。我是否必須在第三頁中寫入與第二頁中相同的php代碼,或者我需要將它存儲在某個會話變量中。如何在這裏使用會話變量?
此外,重寫第三頁中的相同代碼和第二頁中的代碼是否正確並使用相同的查詢$ q1和$ q2?我也會複製和粘貼相同的PHP到第三頁。
基本上這個問題是基於意見的。您可以將數據存儲在會話中(如果不是太大)並在第三頁中使用。但我寧願將查詢和數據提取放入函數/單獨文件中,並在兩個頁面中包含/調用它。當用戶到達第三頁時數據可能已經改變。再次很多取決於個人喜好,以及你想達到什麼。 – bansi
@bansi感謝input.u基本上是說,我可以使用相同的PHP代碼(如上面提到的問題),並在第三頁也使用相同的。這將意味着我將連接到相同的服務器和DB再次。 – jane