出於某種原因,我的帖子ID會話沒有轉到我的評分腳本頁面。我從帖子頁面的帖子頁面中獲取post_id,並將其轉化爲$_SESSION
以將其帶到我的評分腳本頁面。我的$_SESSION
保存登錄的用戶ID $_SESSION['user_id']
如果登錄繼續到評分腳本但不是$_SESSION
。我怎樣才能讓我的帖子ID繼續到我的評分腳本頁面?我有兩個頁面的頂部有session_start();
。
$_SESSION['post_id'] = $_GET['pid'];
出於某種原因,我的帖子ID會話沒有轉到我的評分腳本頁面。我從帖子頁面的帖子頁面中獲取post_id,並將其轉化爲$_SESSION
以將其帶到我的評分腳本頁面。我的$_SESSION
保存登錄的用戶ID $_SESSION['user_id']
如果登錄繼續到評分腳本但不是$_SESSION
。我怎樣才能讓我的帖子ID繼續到我的評分腳本頁面?我有兩個頁面的頂部有session_start();
。
$_SESSION['post_id'] = $_GET['pid'];
在開始會話之前,您可能有一些輸出。如果是這種情況,會話可能無法正確設置。啓用調試模式,並尋找一個錯誤關於session_start()函數:
ini_set('display_errors', 'on');
error_reporting(E_ALL);
或檢查的error_log如果不能切換調試上。
錯誤可能是這樣的:
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at C:\xampp\htdocs\phptests\test.php:1) in C:\xampp\htdocs\phptests\test.php on line 4
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at C:\xampp\htdocs\phptests\test.php:1) in C:\xampp\htdocs\phptests\test.php on line 4
+1我正在輸入相同的東西..每次都會得到我......即使是空白的行可以做到這一點。 – Mikey1980 2010-08-31 13:46:40
我在哪裏放置此代碼? – aatteot 2010-08-31 13:47:03
@aatteot,位於腳本的頂部。 – shamittomar 2010-08-31 13:49:51
因與PHP會話問題的最常見原因是會議開始前的PHP腳本輸出的東西。
好吧,您可能沒有任何回聲語句,或者除了閱讀會話之外,您甚至可能沒有任何PHP代碼......但花時間檢查您的代碼開始之前會發生什麼。
例如,我們的臨場發揮的區別:(只有一個代碼將工作)
<?php
session_start();
$_SESSION["test"] = "hello";
if($_SESSION["test"] == "hello";
{
echo "Session is working!";
}
else
{
echo "Session is NOT working!";
}
?>
和...
<?php
session_start();
$_SESSION["test"] = "hello";
if($_SESSION["test"] == "hello";
{
echo "Session is working!";
}
else
{
echo "Session is NOT working!";
}
?>
所不同的是,有在開幕前一個空格session_start()之前的任何數據都會停止腳本的工作。
我一直在那裏 - 在文檔的頂部有一個意外的空白或空白行會產生嚴重的問題,但啓用php錯誤輸出應該會告訴您在哪裏出錯,如果是這種情況。
'$ _SESSION ['post_id'] = $ _GET ['pid'];'在每頁的頂部?如果沒有提供pid,'$ _SESSION ['post_id']'將會被覆蓋掉。 – fredley 2010-08-31 13:40:05
沒有它的只是在後頁面。 – aatteot 2010-08-31 13:40:48