作者ybite (小犬)
看板PHP
標題Re: [請益] 會員系統 cookie無法傳及header問題
時間Tue Sep 8 23:10:40 2009
※ 引述《shen616 (Chou)》之銘言:
這是和
#1AVTKzbO 一樣的問題
解釋:
: 在單機自己架的伺服器執行ok,但傳到其他mysql空間就不行了
: 做會員登入網頁遇到錯誤:
: Notice: Undefined index: passed in E:\www\webservices98\member\main.php on
: line 3
這一行跑出 Notice,所以PHP會自動先輸出 HTTP Header
: Warning: Cannot modify header information - headers already sent by (output
: started at E:\www\webservices98\member\main.php:3) in
: E:\www\webservices98\member\main.php on line 8
所以header('Location: ...') 炸掉了
修正
: main.php:
: <?php
把這行
: $passed = $_COOKIE["passed"];
改成
$passed = '';
if (array_key_exists('passed', $_COOKIE))
{ $passed = $_COOKIE['passed']; }
: if ($passed != "TRUE")
: {
: header("location:index.html");
: exit();
: }
: else
: {
: $id = $_COOKIE["id"];
:
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.247.164
推 shen616 :改了雖然沒錯但會跑到if ($passed != "TRUE")區塊裡 09/09 00:01
→ shen616 :謝謝回答!! 09/09 00:01
推 shen616 :所以cookie根本沒寫進去?因為passed變數不是true 09/09 00:04
推 shen616 :呃,我把checkpwd程式碼放到main最上面做修正就ok了.. 09/09 00:18
推 shen616 :只是這樣寫法就不是當初想要的流程了@@ 09/09 00:24
→ kylekai :哪裡跟你當初想要的流程不一樣?.. 09/09 19:53