Hi,
I would greatly appreciate some help? I am brand new to PHP and have been searching and editing code ALL day :shrug:yet I still cannot find the reason for this error in my Sendmail.php file:
Warning: Cannot modify header information - headers already sent by (output started at /home/appleis/public_html/sendmail.php:3) in /home/appleis/public_html/sendmail.php on line 48
My only thought is it may be related to the function "show_error" which has a html section and may affect the browser cache. I don't know how to fix that?
The above error is occurring when all test data entered is in the correct style and fields validate. If I deliberately leave out a valid field, my check controls and show_error work properly yet as soon as they are fixed the next submit casues the heading error statement.
I am using a html form & I know all my fields in html are correct.
Any help is much appreciated, Dennis
My Sendmail.php code is as follows, the bad code line is in red:
<head>
<style type="text/css">
.style1 {
background-color: C7AEC7;
}
</style>
</head>
<?php
/* Set e-mail recipient */
$myemail = "myname@mydomain.com.au";
/* Instead of captcha use this access code, set in my html form for the euser to enter.*/
if (strtolower($_POST['accesscode']) != 'apple') {die('Wrong access code, Use Back Browser button and re-enter code');}
/* Check all form inputs using check_input function */
$firstname = check_input($_REQUEST['first_name'], "Please Enter First Name with NO spaces or numbers. Please press the BACK button in your browser and try again.") ;
$lastname = check_input($_REQUEST['last_name'], "Please Enter Last Name with NO spaces or numbers. Please press the BACK button in your browser and try again.") ;
$street = $_REQUEST['street_no'] ;
$suburb = check_input($_REQUEST['suburb']) ;
$state = check_input($_REQUEST['state']) ;
$pcode = $_REQUEST['pcode'] ;
$country = check_input($_REQUEST['ctry']) ;
$phone = check_input($_REQUEST['phone_no'], "Please Enter a contact Phone number. Please press the BACK button in your browser and try again.") ;
$email = check_input($_REQUEST['email'],"Please Re- Enter your Email Address, ensuring you check the format. Please press the BACK button in your browser and try again.") ;
$cottage = $_REQUEST['cottage'] ;
$arr_day = check_input($_REQUEST['arr_day'], "Please Enter a valid Arrival day. Please press the BACK button in your browser and try again.") ;
$arr_date = check_input($_REQUEST['arr_date'], "Please Enter a valid Arrival date. Please press the BACK button in your browser and try again.") ;
$arr_month = check_input($_REQUEST['arr_month'], "Please Enter a valid Arrival month. Please press the BACK button in your browser and try again.") ;
$arr_year = check_input($_REQUEST['arr_year'], "Please Enter a valid Arrival year. Please press the BACK button in your browser and try again.") ;
$dep_day = check_input($_REQUEST['dep_day'], "Please Enter a valid Departure day. Please press the BACK button in your browser and try again.") ;
$dep_date = check_input($_REQUEST['dep_date'], "Please Enter a valid Departure date. Please press the BACK button in your browser and try again.") ;
$dep_month = check_input($_REQUEST['dep_month'], "Please Enter a valid Departure month. Please press the BACK button in your browser and try again.") ;
$dep_year = check_input($_REQUEST['dep_year'], "Please Enter a valid Departure year. Please press the BACK button in your browser and try again.") ;
$adults = check_input($_REQUEST['adult_guests_num'], "Please Enter a number of Adult Guests. Please press the BACK button in your browser and try again.") ;
$children = $_REQUEST['child_guests_num'] ;
$message = check_input($_REQUEST['additional_info']) ;
/* Check if e-mail is valid structure, if not show error message */
if (!preg_match("/([w-]+@[w-]+.[w-]+)/", $email))
{
show_error("E-mail address not valid");
}
/* Send the message using mail() function */
mail( $myemail, "Enquiry for Accommodation", "From: $email", "$firstname $lastname, n$street, $suburb, n$state. $pcode nCountry: $country nPh: $phone nPreferred Cottage: $cottagen nArrival Date: $arr_day $arr_date/$arr_month/$arr_yearn nDepart Date: $dep_day $dep_date/$dep_month/$dep_year
nAdults: $adultsn nChildren: $childrenn nMessage: $messagen" );
/* Redirect visitor to the thank you page */
header("Location: http://www.mydomain.com.au/enquiry_thankyou.html");
/* Prepare autoresponder subject */
$respond_subject = "Thank you for contacting us.";
/* Prepare autoresponder message */
$respond_message = "Hello $firstname,
Thank you for the accommodation enquiry.
Your requested stay: $arr_date/$arr_month/$arr_year to $dep_date/$dep_month/$dep_year
Enquiry Name: $lastname
Number of Guests: Adults - $adults, Children (under 12yrs) - $children
I will respond to you within 24 hours.
Regards, Julie,
Our business & domain
";
/* Send the message using mail() function */
mail($email, $respond_subject, $respond_message);
/* Functions we used */
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)
{
?>
<html>
<body>
<b><span class="style1"> Cottages - Enquiry FORM
</span>
Please correct the following error:
</b>
<?php echo $myError; ?>
</body>
</html>
<?php
exit();
}
/* this form is working and provides all functions */
?>
same querie, or a new one??
Hi guys,I'm still working on this drop down list. I've got the actual drop down list to work (call all the "pname"s from the table, and I've even found how to print the result once you
Got A Free Server :(
So I was given a free server http://shopping.yahoo.com/p:Compaq%20ProLiant%201500%20Server:1990708735It is a Compaq Proliant 1500 :|And I cannot seem to get it to install any OS from the CD drive
RTF fomatting to email content
Im trying to sen an email with content is picked up from a rtf-file (file_get_contents('*.rtf'). Mail is sent correctly, but the formatting of the content includes rtf formatting like:
Casting Decimals in Oracle
This code worked as a query in DB2, but I am not sure what the syntax is for casting decimals in Oracle:
Pls help with PHP
Pls can anyone direct me on how to create a user account for a customer. For example i want know if i need to use the "create databse" and create "user identified by ''" for each
Problem with Subscreen
Dear Experts ,
Displaying data from MySql a different way
Hi all,I'm pretty new to php and MySql and have hit a problem.I am able to display data in a table using the following code:<?php $database="MYDATABASE"; mysql_connect
How to show the difference between two data field in a database with php.
Hello php gurus,how r u all... i'm not so well facing a typical problem please help me...i'm working with php and mysql.my problem is...in a data base have two integer field like parent_id &
php email checker
I am having alot of trouble finding info on how to do these email things. I need to do the following.Have a php file log into a email account and saves the emails as text files in a directory then
Login page problems
I developed a website a few months ago and I am now having an issue with logging into it. The place that it is hosted just did some upgrades to their servers and for some reason, now my login page