Heim Backend-Entwicklung PHP-Tutorial 新手求解!Cannot modify header information…的有关问题TAT

新手求解!Cannot modify header information…的有关问题TAT

Jun 13, 2016 am 10:27 AM
email gt header lt quot

新手求解!!Cannot modify header information…的问题TAT
我想用PHP contact form做一个inquiry page, 让人填上姓名、电话、email等, 按”send”就会将以上资料变成email 发到我的mail box

但其实我是新手…整个contact form基本上是用这个网教的抄抄改改出来的: http://myphpform.com/php-form-tutorial.php

按了”send”后我想网页跳到thank you page, 但会出现”Cannot modify header information – header already sent by (output started at C:\inetpub\wwwroot\contant2.php:1) in C:\inetpub \wwwroot\contant2.php on line 34” 这个问题

*Line34 = header('location:ThankYou.html');

我找过解决方法, 试了
1. 在header后加exit();
2. 加上和ob_end_flush();

最后是可以成功寄出email, 资料有遗漏也会跳到error page, 但都是无法去到thank you page…都是会出现Cannot modify header information(略)

请问我加exit / ob_start的地方有错吗? 还是有什么其他问题呢?
麻烦各位高手帮忙看看>
以下是代码

P.S.我是用notepad做这个php档的

PHP code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?php ob_start(); ?><?phpdate_default_timezone_set ('Asia/Hong_Kong');ini_set("sendmail_from","[email&#160;protected]");ini_set("SMTP","smtp.wtt-mail.com");$myemail  = "[email&#160;protected]";$company = check_input($_POST['company'], "Please enter your company's name");$person = check_input($_POST['person'], "Please enter your name");$tel = check_input($_POST['tel'], "Please enter your contact number");$email = check_input($_POST['email'], "Please enter your E-mail");$subject  = "Online Enquiry";if (!preg_match("/([\w\-]+\@[\w\-]+\.[\w\-]+)/", $email)){    show_error("E-mail address not valid");}if (!preg_match("/^(https?:\/\/+[\w\-]+\.[\w\-]+)/i", $website)){    $website = '';}$message = "Hello!Contact form has been submitted by:Company Name: $companyContact Person: $personTel: $telE-mail: $emailContent:$contentEnd of message";mail($myemail,$subject,$message);header('location:ThankYou.html');exit();function check_input($data, $problem=''){    $data = trim($data);    $data = stripslashes($data);    $data = htmlspecialchars($data);    if ($problem && strlen($data) == 0)    {        show_error($problem);    }    return $data;}function show_error($myError){?>            <title>Order form error</title>    <style type="text/css">    .style2 {        text-align: center;        border-width: 0px;    }    </style>        <marquee direction="right" hspace="200" vspace="50" behavior="alternate">    <h2>
<b>Please correct the following error:</b><br><h2>    <h2>
<?php echo $myError; ?><h2></h2>
</h2>
</h2>
</h2></marquee>        <p>        </p><p class="MsoNormal" align="center">            <input type="button" value=" Back to previous page " onclick="history.back()">        </p><p class="MsoNormal" align="center">        </p>      <?phpexit ();}ob_end_flush();?>
Nach dem Login kopieren





------解决方案--------------------
探讨

喔...不好意思那空行是发帖时手滑按到的...

------解决方案--------------------
检查下文件是否有bom头,有的话去掉
在header('location: ThankYou.html');前面加上ob_clean();试试
------解决方案--------------------
除了 On 还需要设置显示的级别
error_reporting(E_ALL);

探讨

我把header那行改成
//header('location: ThankYou.html');
然後在php.ini改了display_errors = On
是這樣沒錯吧?

(我不是用apache是用IIS的)重启了之後......浏览器出現的是一片空白......
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Was sind die Unterschiede zwischen Huawei GT3 Pro und GT4? Was sind die Unterschiede zwischen Huawei GT3 Pro und GT4? Dec 29, 2023 pm 02:27 PM

Viele Benutzer werden sich bei der Auswahl von Smartwatches für die Marke Huawei entscheiden. Viele Benutzer sind neugierig auf den Unterschied zwischen Huawei GT3pro und GT4. Was sind die Unterschiede zwischen Huawei GT3pro und GT4? 1. Aussehen GT4: 46 mm und 41 mm, das Material ist Glasspiegel + Edelstahlgehäuse + hochauflösende Faserrückschale. GT3pro: 46,6 mm und 42,9 mm, das Material ist Saphirglas + Titangehäuse/Keramikgehäuse + Keramikrückschale 2. Gesundes GT4: Mit dem neuesten Huawei Truseen5.5+-Algorithmus werden die Ergebnisse genauer. GT3pro: EKG-Elektrokardiogramm sowie Blutgefäß und Sicherheit hinzugefügt

So verwenden Sie die Module email, smtplib, poplib und imaplib zum Senden und Empfangen von E-Mails in Python So verwenden Sie die Module email, smtplib, poplib und imaplib zum Senden und Empfangen von E-Mails in Python May 16, 2023 pm 11:44 PM

Der Weg einer E-Mail ist: MUA: MailUserAgent – ​​Mail User Agent. (d. h. E-Mail-Software ähnlich wie Outlook) MTA: MailTransferAgent – ​​Mail-Transfer-Agent, also E-Mail-Dienstanbieter wie NetEase, Sina usw. MDA: MailDeliveryAgent – ​​Mail-Zustellungsagent. Ein Server des E-Mail-Dienstanbieters sender->MUA->MTA->MTA->if

Wie übergibt SpringBoot Parameter im Header durch Feign-Aufrufe? Wie übergibt SpringBoot Parameter im Header durch Feign-Aufrufe? May 16, 2023 pm 08:38 PM

[SpringBoot] Übergeben von Parametern im Header durch Feign-Aufrufe So übergeben Sie Header-Parameter durch Feign Problembeschreibung Wenn wir Feign verwenden, um die API-Schnittstelle eines anderen Dienstes in Spring Cloud anzufordern, müssen die Parameter im Header übergeben werden. Wenn nein Wenn eine spezielle Verarbeitung durchgeführt wird, gehen die Parameter im Header verloren. Lösung 1: Übergeben Sie es über @RequestHeader(name="headerName"). Beispiel: Feign ist wie folgt definiert: @FeignClient(name="service-name")pub

Was bedeutet Linux-Header? Was bedeutet Linux-Header? Jul 18, 2023 pm 03:34 PM

Der Header von Linux bezieht sich auf den Anfang einer Datei oder eines Datenstroms, der Metadaten über den Inhalt enthält. Durch korrektes Schreiben und Verwenden der Header-Datei können Entwickler Systemressourcen besser nutzen und die Lesbarkeit und Lesbarkeit des Codes verbessern. Wartbarkeit.

Fix: Snipping-Tool funktioniert unter Windows 11 nicht Fix: Snipping-Tool funktioniert unter Windows 11 nicht Aug 24, 2023 am 09:48 AM

Warum das Snipping-Tool unter Windows 11 nicht funktioniert Das Verständnis der Grundursache des Problems kann dabei helfen, die richtige Lösung zu finden. Hier sind die häufigsten Gründe, warum das Snipping Tool möglicherweise nicht ordnungsgemäß funktioniert: Focus Assistant ist aktiviert: Dies verhindert, dass das Snipping Tool geöffnet wird. Beschädigte Anwendung: Wenn das Snipping-Tool beim Start abstürzt, ist es möglicherweise beschädigt. Veraltete Grafiktreiber: Inkompatible Treiber können das Snipping-Tool beeinträchtigen. Störungen durch andere Anwendungen: Andere laufende Anwendungen können mit dem Snipping Tool in Konflikt geraten. Das Zertifikat ist abgelaufen: Ein Fehler während des Upgrade-Vorgangs kann zu diesem Problem führen. Diese einfache Lösung ist für die meisten Benutzer geeignet und erfordert keine besonderen technischen Kenntnisse. 1. Aktualisieren Sie Windows- und Microsoft Store-Apps

So verwenden Sie die PHP-Header()-Methode zum Anpassen von Webseiten So verwenden Sie die PHP-Header()-Methode zum Anpassen von Webseiten Mar 28, 2023 pm 01:54 PM

PHP ist eine leistungsstarke Programmiersprache, mit der dynamische Websites und Webanwendungen erstellt werden können. Eine der leistungsstärksten Funktionen ist die header()-Methode von PHP. In diesem Artikel erfahren Sie, wie Sie die header()-Methode von PHP zum Anpassen von Webseiten verwenden.

So springen Sie in den PHP-Header So springen Sie in den PHP-Header Dec 02, 2022 am 09:14 AM

So implementieren Sie einen Sprung im PHP-Header: 1. Verwenden Sie die Syntax „Header(“Location:$url“);“ "]){ header('location:register.php'); } else{ setcookie('u_type','1','86400*360');".

So beheben Sie den Fehler „Verbindung zum App Store nicht möglich' auf dem iPhone So beheben Sie den Fehler „Verbindung zum App Store nicht möglich' auf dem iPhone Jul 29, 2023 am 08:22 AM

Teil 1: Erste Schritte zur Fehlerbehebung Überprüfen des Apple-Systemstatus: Bevor wir uns mit komplexen Lösungen befassen, beginnen wir mit den Grundlagen. Das Problem liegt möglicherweise nicht an Ihrem Gerät; die Server von Apple sind möglicherweise ausgefallen. Besuchen Sie die Systemstatusseite von Apple, um zu sehen, ob der AppStore ordnungsgemäß funktioniert. Wenn es ein Problem gibt, können Sie nur warten, bis Apple es behebt. Überprüfen Sie Ihre Internetverbindung: Stellen Sie sicher, dass Sie über eine stabile Internetverbindung verfügen, da das Problem „Verbindung zum AppStore nicht möglich“ manchmal auf eine schlechte Verbindung zurückzuführen ist. Versuchen Sie, zwischen WLAN und mobilen Daten zu wechseln oder die Netzwerkeinstellungen zurückzusetzen (Allgemein > Zurücksetzen > Netzwerkeinstellungen zurücksetzen > Einstellungen). Aktualisieren Sie Ihre iOS-Version:

See all articles