Rumah pembangunan bahagian belakang tutorial php 新手求解!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();?>
Salin selepas log masuk





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

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

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

探讨

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

(我不是用apache是用IIS的)重启了之後......浏览器出現的是一片空白......
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Apakah perbezaan antara Huawei GT3 Pro dan GT4? Apakah perbezaan antara Huawei GT3 Pro dan GT4? Dec 29, 2023 pm 02:27 PM

Ramai pengguna akan memilih jenama Huawei apabila memilih jam tangan pintar Antaranya, Huawei GT3pro dan GT4 adalah pilihan yang sangat popular. Apakah perbezaan antara Huawei GT3pro dan GT4? 1. Rupa GT4: 46mm dan 41mm, bahan cermin kaca + badan keluli tahan karat + cangkang belakang gentian resolusi tinggi. GT3pro: 46.6mm dan 42.9mm, bahannya ialah kaca nilam + badan titanium/badan seramik + cangkerang belakang seramik 2. GT4 yang sihat: Menggunakan algoritma Huawei Truseen5.5+ terkini, hasilnya akan lebih tepat. GT3pro: Penambahan elektrokardiogram ECG dan saluran darah serta keselamatan

Cara menggunakan modul e-mel, smtplib, poplib, imaplib untuk menghantar dan menerima e-mel dalam Python Cara menggunakan modul e-mel, smtplib, poplib, imaplib untuk menghantar dan menerima e-mel dalam Python May 16, 2023 pm 11:44 PM

Perjalanan e-mel ialah: MUA: MailUserAgent - Mail User Agent. (iaitu perisian e-mel yang serupa dengan Outlook) MTA: MailTransferAgent - Ejen pemindahan mel, iaitu pembekal perkhidmatan e-mel tersebut, seperti NetEase, Sina, dsb. MDA: MailDeliveryAgent - Ejen penghantaran mel. Pelayan penghantar pembekal perkhidmatan E-mel->MUA->MTA->MTA->jika

Bagaimanakah SpringBoot melepasi parameter dalam Pengepala melalui panggilan Feign? Bagaimanakah SpringBoot melepasi parameter dalam Pengepala melalui panggilan Feign? May 16, 2023 pm 08:38 PM

[SpringBoot] Melepasi parameter dalam Pengepala melalui panggilan Feign Cara menghantar parameter Pengepala melalui Perihalan Masalah Feign Apabila kami menggunakan Feign untuk meminta antara muka API perkhidmatan lain dalam Spring Cloud, terdapat keperluan untuk lulus parameter dalam Pengepala Jika tidak pemprosesan khas dilakukan, ia akan Parameter dalam Pengepala akan hilang. Penyelesaian 1: Lulus melalui @RequestHeader(name="headerName"). Contohnya: Feign ditakrifkan seperti berikut @FeignClient(name="service-name")pub

Apakah maksud pengepala linux? Apakah maksud pengepala linux? Jul 18, 2023 pm 03:34 PM

Pengepala Linux merujuk kepada permulaan fail atau aliran data, yang digunakan untuk mengandungi metadata tentang kandungan Dengan menulis dan menggunakan fail Pengepala dengan betul, pembangun boleh menggunakan sumber sistem dengan lebih baik dan meningkatkan kebolehbacaan dan Kebolehselenggaraan kod.

Betulkan: Alat snipping tidak berfungsi dalam Windows 11 Betulkan: Alat snipping tidak berfungsi dalam Windows 11 Aug 24, 2023 am 09:48 AM

Mengapa Alat Snipping Tidak Berfungsi pada Windows 11 Memahami punca masalah boleh membantu mencari penyelesaian yang betul. Berikut ialah sebab utama Alat Snipping mungkin tidak berfungsi dengan betul: Focus Assistant dihidupkan: Ini menghalang Snipping Tool daripada dibuka. Aplikasi rosak: Jika alat snipping ranap semasa pelancaran, ia mungkin rosak. Pemacu grafik lapuk: Pemacu yang tidak serasi mungkin mengganggu alat snipping. Gangguan daripada aplikasi lain: Aplikasi lain yang sedang berjalan mungkin bercanggah dengan Alat Snipping. Sijil telah tamat tempoh: Ralat semasa proses naik taraf boleh menyebabkan penyelesaian mudah ini sesuai untuk kebanyakan pengguna dan tidak memerlukan sebarang pengetahuan teknikal khusus. 1. Kemas kini apl Windows dan Microsoft Store

Cara menggunakan kaedah PHP header() untuk melaraskan halaman web Cara menggunakan kaedah PHP header() untuk melaraskan halaman web Mar 28, 2023 pm 01:54 PM

PHP ialah bahasa pengaturcaraan yang berkuasa yang boleh digunakan untuk mencipta laman web dinamik dan aplikasi web. Salah satu ciri yang paling berkuasa ialah kaedah header() PHP. Dalam artikel ini, kami akan meneroka cara menggunakan kaedah header() PHP untuk melaraskan halaman web.

Bagaimana untuk melompat dalam pengepala php Bagaimana untuk melompat dalam pengepala php Dec 02, 2022 am 09:14 AM

Cara melaksanakan lompat dalam pengepala php: 1. Gunakan "Header("Location:$url");" untuk melaksanakan lompatan 2. Gunakan if judgment untuk melaksanakan lompatan, dengan pernyataan lompat seperti "if($_COOKIE[" u_type; "]){ header('lokasi:register.php'); } else{ setcookie('u_type','1','86400*360');".

Cara Membetulkan Ralat Tidak Dapat Menyambung ke App Store pada iPhone Cara Membetulkan Ralat Tidak Dapat Menyambung ke App Store pada iPhone Jul 29, 2023 am 08:22 AM

Bahagian 1: Langkah Penyelesaian Masalah Awal Menyemak Status Sistem Apple: Sebelum menyelidiki penyelesaian yang rumit, mari kita mulakan dengan asas. Masalahnya mungkin tidak terletak pada peranti anda; Lawati halaman Status Sistem Apple untuk melihat sama ada AppStore berfungsi dengan betul. Jika terdapat masalah, anda hanya boleh menunggu Apple membetulkannya. Semak sambungan Internet anda: Pastikan anda mempunyai sambungan internet yang stabil kerana isu "Tidak dapat menyambung ke AppStore" kadangkala boleh dikaitkan dengan sambungan yang lemah. Cuba tukar antara Wi-Fi dan data mudah alih atau tetapkan semula tetapan rangkaian (Umum > Tetapkan Semula > Tetapkan Semula Tetapan Rangkaian > Tetapan). Kemas kini versi iOS anda:

See all articles