php跳转 - php提示「headers already sent by」具体怎么修改!
纯新人,跳转代码别人帮我写的,目的是跳转,文件为go.php
当网址输入go.php?id=taobao的时候就跳转到www.taobao.com
换主机后发生错误
Warning: Cannot modify header information - headers already sent by (output started at /data/home/。。。。。。/go.php:8) in /data/home/。。。。。。/go.php on line 10
百度得知需要改php.ini但新主机改这个很麻烦。。求有没有直接在以上文件php代码里修改以上错误的方法?
代码:
<code> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>正在进入....</title> <?php $id=$_GET["id"]; if($id=="taobao"){Header("Location:http://www.taobao.com"); } ?> </code>
请问应该怎么修改?谢谢!!!
回复内容:
纯新人,跳转代码别人帮我写的,目的是跳转,文件为go.php
当网址输入go.php?id=taobao的时候就跳转到www.taobao.com
换主机后发生错误
Warning: Cannot modify header information - headers already sent by (output started at /data/home/。。。。。。/go.php:8) in /data/home/。。。。。。/go.php on line 10
百度得知需要改php.ini但新主机改这个很麻烦。。求有没有直接在以上文件php代码里修改以上错误的方法?
代码:
<code> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>正在进入....</title> <?php $id=$_GET["id"]; if($id=="taobao"){Header("Location:http://www.taobao.com"); } ?> </code>
请问应该怎么修改?谢谢!!!
go.php页面的作用只做判断跳转使用的话,html标签可以全部去除,go.php文件的代码只需精简到剩下php即可:
<code>php</code><code><?php $id=$_GET["id"]; if($id=="taobao"){Header("Location:http://www.taobao.com"); } </code></code>
如果还出现headers already sent 错误的话,就应该是编写代码的编辑器在文件开头隐藏了bom头信息,网上搜一下相关的编辑器对应方法即可。
如果要保留html代码,并且想要跳转的话,需要使用浏览器端页面跳转的方法,代码可以修改为:
<code>php</code><code> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>正在进入....</title> <?php $id=$_GET["id"]; switch($id) { case 'taobao': echo "<meta http-equiv=\"refresh\" content=\"0;url=http://taobao.com\">"; break; case 'baidu': echo "<meta http-equiv='\"refresh\"' content='\"0;url=http://taobao.com\"'>"; break; case 'others': echo "<meta http-equiv='\"refresh\"' content='\"0;url=http://others.com\"'>"; break; } ?> </code>
【http-equiv实现跳转与header跳转有啥区别】请参照 http://segmentfault.com/q/1010000000703858
把 <?php ... ?>
代码块放到文件最顶部.
header() 被用来发送自定义的 HTTP 报文。
请注意一点header()必须在任何实际输出之前调用,不管是普通的html标签,还是文件里面的空行,空格或者是PHP>文件里的空行,空格。
这是一个非常普遍的错误,在通过include,require,或者其访问其他文件
里面的函数的时候,如果在header()被调用之前,其中有空格或者空行。
如果不是调用其他文件,仅仅是单独使用一个PHP或者HTML文件,在header()被调用之前有输出也会出错。
php手册

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー
