作者 主題: [問題]請幫我解讀一下計數器錯誤訊息…??  (閱讀 3075 次)

0 會員 與 1 訪客 正在閱讀本文。

hover

  • 懷疑的國中生
  • **
  • 文章數: 66
    • 檢視個人資料
請教各位前輩…

我想利用session來作計數功能,結果顯示一些錯誤訊息,可否請各位幫我解讀一下訊息內容是什麼意思??

----原始碼----
<?php session_start();
session_register("counted");

$count="count.txt";
if(!isset($_SESSION["counted"])) {
   $fp=fopen($count,"r");
   $fg=fgets($fp);
   $new=$fg+1;
   fclose($fp);
   $fp=fopen($count,"w");
   fputs($fp,$new);
   fclose($fp);
   $counted=true;
}
$fp=fopen("count.txt","r");
$now=fgets($fp);
fclose($fp);
echo "您是第 $now 訪問的人";
?>

----錯誤訊息----
 Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0

Pail

  • 俺是博士!
  • *****
  • 文章數: 1040
  • 性別: 男
    • 檢視個人資料
[問題]請幫我解讀一下計數器錯誤訊息…??
« 回覆 #1 於: 2004-07-14 16:53 »
老問題嚕...
Search 一下 register_golbals
已經有答案嚕.
Pail Luo.
Email: pail.luo@gmail.com

ricky

  • 區域板主
  • 鑽研的研究生
  • *****
  • 文章數: 669
    • 檢視個人資料
    • Ricky 碎碎唸
[問題]請幫我解讀一下計數器錯誤訊息…??
« 回覆 #2 於: 2004-07-14 16:57 »
別怕別怕
那只是一段警告訊息
因為安全因素所以php到後來預設值就把regist_global給關掉了
避免造成安全上的問題
那段訊息就是說因為你使用了SESSION
同時又把regist_global打開然後又直接使用global形態的變數
而不是使用$_SESSION的話將會導致很嚴重的安全漏洞
如果不想在看到這段警告的話
把session.bug_compat_42 or session.bug_compat_warn 設為 off
就可以了
我的symfony作品:YOMOpets 寵物誌
有興趣可以一起來討論symfony喔
我的部落格:http://ricky.ez2.us/

hover

  • 懷疑的國中生
  • **
  • 文章數: 66
    • 檢視個人資料
[問題]請幫我解讀一下計數器錯誤訊息…??
« 回覆 #3 於: 2004-07-14 16:59 »
引述: "pail"
老問題嚕...
Search 一下 register_golbals
已經有答案嚕.


這樣啊!
我剛剛在本區 search 關鍵字 「register_golbals」…
似乎沒有哩!

search 所有討論區也沒有,是否我找錯了地方了呢??
感謝您的回覆!!

hover

  • 懷疑的國中生
  • **
  • 文章數: 66
    • 檢視個人資料
[問題]請幫我解讀一下計數器錯誤訊息…??
« 回覆 #4 於: 2004-07-14 17:10 »
引述: "ricky"
別怕別怕
那只是一段警告訊息
因為安全因素所以php到後來預設值就把regist_global給關掉了
避免造成安全上的問題
那段訊息就是說因為你使用了SESSION
同時又把regist_global打開然後又直接使用global形態的變數
而不是使用$_SESSION的話將會導致很嚴重的安全漏洞
如果不想在看到這段警告的話
把session.bug_compat_42 or session.bug_compat_warn 設為 off
就可以了


是這樣啊! register_globals 即然有安全上的考量,那應該維持原來的 off 的狀態…但這樣一來,就得修改程式碼了,但不知道該如何修改會比較好呢??
感謝您的回覆!!