頁:
[1]
使用session_start()就無法開啟網頁!
各位大大好小弟是PHP的新手今天在練習session的時候
發現加上session_start(),網頁就開啟失敗
真的不知道為什麼,請大大幫忙。
PHP版本為7.0.1
以下為程式碼
<?php session_start(); ?>
<html>
<head>
<meta charset="UTF-8">
<title></title>
</head>
<body>
<?php
// put your code here
echo 'hello world';
?>
</body>
</html>
<div></div> 確認一下php.ini裡面是不是已經設定好session.auto_start=true
如果已經true那你就不需要再呼叫session_start
另外無法顯示應該會有錯誤訊息
不然很容易要用猜的~
應該要去找error log file
沒記錯應該在php.ini設定裡面也有)
看錯誤內容會比較清楚發生什麼事情 也要順便確定一下 session_start() 之前,不可以有任何輸出。包括空格 session必須要放最前面喔~~~~ 別讓可以幫忙的站友憑經驗用窮舉法瞎猜
失敗應該有顯示錯誤訊息吧?
<br><br><br><br><br><div></div> 是不是這段錯誤訊息?
session_start() cannot send session cache limiter 試試加上ob_start()吧,應該可以解決 本帖最後由 chevylin0802 於 2016-3-2 01:59 PM 編輯
askasb 發表於 2016-2-26 11:30 AM static/image/common/back.gif
是不是這段錯誤訊息?
session_start() cannot send session cache limiter
微軟的編輯系統就是麻煩
自從微軟支援UTF-8編碼文件之後
就會產生出Byte Order Mark的這種東西岀現在文件起始位置
PHP的CGI程式根本不會認識BOM格式
於是就把BOM當成是輸出文字在輸出
導致session_start()執行之前就已經有文字輸出
使得如果想在微軟平台上開發
就只能採用UltraEdit之類的舊型編輯器
要知道是不是PHP檔偷偷被安插進BOM表頭也很簡單
直接在DOS模擬器下cat php檔來看就可以知道
如果顯示出來的PHP檔在'<?'之前還有東西
就表示那是微軟UTF-8文件格式的BOM表頭
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div>
頁:
[1]