国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

php Cannot modify header information-headers already sent by解決辦法

2024-05-04 21:56:38
字體:
來源:轉載
供稿:網友

昨天在使用cookie時頁面報錯:php Cannot modify header information-headers already sent by了,下面我來總結關于報錯的解決辦法,代碼如下:

  1. <?php  
  2. ob_start(); 
  3. setcookie("username","宋巖賓",time()+3600); 
  4. echo "the username is:".$HTTP_COOKIE_VARS["username"]."n"
  5. echo "the username is:".$_COOKIE["username"]."n"
  6. print_r($_COOKIE); 
  7. ?> 

Warning: Cannot modify header information - headers already sent by

出錯的原因我在php程序的頭部加了:

header("cache-control:no-cache,must-revalidate");

原因分析:在PHP里Cookie的使用是有一些限制的。

1、使用setcookie必須在<html>標簽之前

2、使用setcookie之前,不可以使用echo輸入內容

3、直到網頁被加載完后,cookie才會出現

4、setcookie必須放到任何資料輸出瀏覽器前,才送出.....

由于上面的限制,在使用setcookie()函數時,學會遇到 "Undefined index"、"Cannot modify header information - headers already sent by"…等問題,解決辦法是在輸出內容之前,產生cookie

解決辦法

1在頁面頂部的php標簽中加入ob_start();

2在返回的信息下面加入ob_end_flush();

這樣就可以屏蔽錯誤信息的現實了,但有的朋友說上面辦法不行,后來我后來打開 php.ini 然后把 output_buffering 設為 on,重起appache,OK。看來這才是解決辦法,另外有朋友說是編碼問題,只要轉換文檔有uft-8就可以解決了,這里就不介紹了。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 孟州市| 合江县| 馆陶县| 沛县| 北京市| 晴隆县| 高淳县| 舞钢市| 建德市| 胶州市| 莱西市| 南投市| 新巴尔虎右旗| 射阳县| 霍邱县| 鲜城| 建始县| 凤城市| 阳信县| 阿克陶县| 聂荣县| 黔东| 卓资县| 汤阴县| 霍林郭勒市| 南阳市| 灌云县| 夏津县| 乐山市| 雷山县| 天等县| 马尔康县| 高密市| 修文县| 昭苏县| 闽清县| 望奎县| 晴隆县| 汝南县| 三亚市| 海宁市|