mehole Posted August 21, 2006 Share Posted August 21, 2006 I am very new to php so go easy if these mistakes are stupid ;)I've got this script:[code]<?PHP $fname = $_POST['fname']; $lname = $_POST['lname'];$email = $_POST['email']; $phone = $_POST['phone'];$wmonth = $_POST['month'];$wdate = $_POST['date'];$wyear = $_POST['year'];$umonth = $_POST['month2'];$udate = $_POST['date2'];$uyear = $_POST['year2'];$adults = $_POST['adults'];$child = $_POST['child'];$submit = $_POST['submit']; //enter the email that the form should be sent to$emailTo = 'my@email.com'; //enter the email's subject$emailSubject = "Email subject"; $emailBody = "Name: $fname $lname\n"; "Email: $email\n"; "Phone Number: $phone\n"; "Dates wanted: $wmonth-$wdate-$wyear\n"; "Until: $umonth-$udate-$year"; "Number of Adults: $adults"; "Number of Children: $child";$emailHeader = "From: $fname $lname; $email\n"; "Reply-To: $fname $lname\n"; "MIME-Version: 1.0\n"; "Content-type: text/plain; charset=\"ISO-8859-1\"\n"; "Content-transfer-encoding: quoted-printable\n"; mail($emailTo, $emailSubject, $emailBody, $emailHeader); if ($_POST['submit']) { if (($fname=="") || ($lname=="")|| ($email=="") || ($wmonth=="") || ($wdate=="") || ($wyear=="") || ($umonth=="") || ($udate=="") || ($uyear=="") || ($adults=="")) {print "Error: Please complete all of the required fields.";outputform(); } else {//URL of where the user is redirected toheader("Location: http://www.mysite.com"); exit; }?>[/code]But i keep getting this error:[quote]Parse error: parse error, unexpected $ in /home/content/m/e/h/mehole8338/html/Bookingform/enquiry.php on line 51[/quote]But all that is on line 51 is [code]?>[/code]so i don't understand what is wrong?Can someone help me out?Many thanksMike Quote Link to comment Share on other sites More sharing options...
hostfreak Posted August 21, 2006 Share Posted August 21, 2006 I'm pretty sure:[code]$emailBody = "Name: $fname $lname\n"; "Email: $email\n"; "Phone Number: $phone\n"; "Dates wanted: $wmonth-$wdate-$wyear\n"; "Until: $umonth-$udate-$year"; "Number of Adults: $adults"; "Number of Children: $child";[/code]Should Be:[code]$emailBody = "Name: $fname $lname\n Email: $email\n Phone Number: $phone\n Dates wanted: $wmonth-$wdate-$wyear\n Until: $umonth-$udate-$year Number of Adults: $adults Number of Children: $child";[/code]Also, change:[code]if ($_POST['submit']) { [/code]To:[code]if (isset($_POST['submit'])) { [/code]edit (after seeing scott's reply)-Change:[code]$emailHeader = "From: $fname $lname; $email\n"; "Reply-To: $fname $lname\n"; "MIME-Version: 1.0\n"; "Content-type: text/plain; charset=\"ISO-8859-1\"\n"; "Content-transfer-encoding: quoted-printable\n"; [/code]To:[code]$emailHeader .= "From: $fname $lname; $email\n" ."Reply-To: $fname $lname\n" ."MIME-Version: 1.0\n" ."Content-type: text/plain; charset=\"ISO-8859-1\"\n" ."Content-transfer-encoding: quoted-printable\n";[/code] Quote Link to comment Share on other sites More sharing options...
ScottRiley Posted August 21, 2006 Share Posted August 21, 2006 Yeah, you need to sort your strings out, there's no need for closing the quotes and adding the semicolon, just wrap the whole string in a set of quotes. you do the same for your e-mail header variable too, change it so that the string is wrapped in quotes, without the semicolons at the end, like hostfreak said. Quote Link to comment Share on other sites More sharing options...
mehole Posted August 21, 2006 Author Share Posted August 21, 2006 Ok, i've changed what you said but i'm still getting the same error: [quote]Parse error: parse error, unexpected $ in /home/content/m/e/h/mehole8338/html/Bookingform/enquiry.php on line 51[/quote]I dont understand what's wrong? Quote Link to comment Share on other sites More sharing options...
ToonMariner Posted August 21, 2006 Share Posted August 21, 2006 you are missing a closing '}' on your if statementchange[code]<?phpif ($_POST['submit']) { if (($fname=="") || ($lname=="")|| ($email=="") || ($wmonth=="") || ($wdate=="") || ($wyear=="") || ($umonth=="") || ($udate=="") || ($uyear=="") || ($adults=="")) {print "Error: Please complete all of the required fields.";outputform(); } else {//URL of where the user is redirected toheader("Location: http://www.mysite.com"); exit; }?>[/code]to[code]<?phpif ($_POST['submit']) { if (($fname=="") || ($lname=="")|| ($email=="") || ($wmonth=="") || ($wdate=="") || ($wyear=="") || ($umonth=="") || ($udate=="") || ($uyear=="") || ($adults=="")) {print "Error: Please complete all of the required fields.";outputform(); } else {//URL of where the user is redirected toheader("Location: http://www.mysite.com"); exit; }}?>[/code] Quote Link to comment Share on other sites More sharing options...
hostfreak Posted August 21, 2006 Share Posted August 21, 2006 Can't believe I missed that Quote Link to comment Share on other sites More sharing options...
ToonMariner Posted August 21, 2006 Share Posted August 21, 2006 You have clearly not missed enough closing braces in your time!!!!!!the error always points to the last line of the script!!! ;) Quote Link to comment Share on other sites More sharing options...
mehole Posted August 21, 2006 Author Share Posted August 21, 2006 thanks guys, i'm not getting the error anymore, but it is just showing a blank screen when I hit submit, the e-mail is being sent but it is not going to the page i redirected it to? Quote Link to comment Share on other sites More sharing options...
ToonMariner Posted August 21, 2006 Share Posted August 21, 2006 check you logic in the if statement... just using =="" sometimes aint good enough.. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.