How to link a php file to a form, PHP and html |
How to link a php file to a form, PHP and html |
bleedz129 |
Apr 5 2014, 07:36 PM
Post
#1
|
Novice Group: Members Posts: 21 Joined: 24-March 14 Member No.: 20,600 |
Hi !
I am linking my php file to the email form I have. However when I click submit to send the email, the page opens in php codes. this is what I have CODE <form name="contactform" method="post" action="send_form_email.php"> Isn't that correct ? is it not oppening because I have a problem with my php file ? this is some of my php code, you can skip through it since it is long CODE <?php if(isset($_POST['email'])) { // EDIT THE 2 LINES BELOW AS REQUIRED $email_to = "***@***.***"; $email_subject = "Please contact me if intrested"; function died($error) { // your error code can go here echo "We are very sorry, but there were error(s) found with the form you submitted. "; echo "These errors appear below.<br /><br />"; echo $error."<br /><br />"; echo "Please go back and fix these errors.<br /><br />"; die(); } // validation expected data exists if(!isset($_POST['first_name']) || !isset($_POST['last_name']) || !isset($_POST['email']) || !isset($_POST['telephone']) || !isset($_POST['comments'])) { died('We are sorry, but there appears to be a problem with the form you submitted.'); } $first_name = $_POST['first_name']; // required $last_name = $_POST['last_name']; // required $email_from = $_POST['email']; // required $telephone = $_POST['telephone']; // not required $comments = $_POST['comments']; // required $error_message = ""; $email_exp = '/^[A-Za-z0-9._%-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,4}$/'; if(!preg_match($email_exp,$email_from)) { $error_message .= 'The Email Address you entered does not appear to be valid.<br />'; } $string_exp = "/^[A-Za-z .'-]+$/"; if(!preg_match($string_exp,$first_name)) { $error_message .= 'The First Name you entered does not appear to be valid.<br />'; } if(!preg_match($string_exp,$last_name)) { $error_message .= 'The Last Name you entered does not appear to be valid.<br />'; } if(strlen($comments) < 2) { $error_message .= 'The Comments you entered do not appear to be valid.<br />'; } if(strlen($error_message) > 0) { died($error_message); } $email_message = "Form details below.\n\n"; function clean_string($string) { $bad = array("content-type","bcc:","to:","cc:","href"); return str_replace($bad,"",$string); } $email_message .= "First Name: ".clean_string($first_name)."\n"; $email_message .= "Last Name: ".clean_string($last_name)."\n"; $email_message .= "Email: ".clean_string($email_from)."\n"; $email_message .= "Telephone: ".clean_string($telephone)."\n"; $email_message .= "Comments: ".clean_string($comments)."\n"; // create email headers $headers = 'From: '.$email_from."\r\n". 'Reply-To: '.$email_from."\r\n" . 'X-Mailer: PHP/' . phpversion(); @mail($email_to, $email_subject, $email_message, $headers); ?> This post has been edited by Christian J: Apr 6 2014, 08:41 AM |
pandy |
Apr 5 2014, 09:46 PM
Post
#2
|
🌟Computer says no🌟 Group: WDG Moderators Posts: 20,730 Joined: 9-August 06 Member No.: 6 |
QUOTE the page opens in php codes. What do you mean by that? Do you see the php code on the page? In that case I'd say the PHP is never parsed. Do you use PHP otherwise on your site and if so does it work? |
bleedz129 |
Apr 6 2014, 04:12 AM
Post
#3
|
Novice Group: Members Posts: 21 Joined: 24-March 14 Member No.: 20,600 |
QUOTE the page opens in php codes. What do you mean by that? Do you see the php code on the page? In that case I'd say the PHP is never parsed. Do you use PHP otherwise on your site and if so does it work? Well I will give more info... I am runing it from notepad++ on google chrome. Yes I see the actual code of php when i click submit.... What do you mean by never parsed? |
Frederiek |
Apr 6 2014, 04:39 AM
Post
#4
|
Programming Fanatic Group: Members Posts: 5,146 Joined: 23-August 06 From: Europe Member No.: 9 |
PHP is a server-side programming language and thus needs to run from a server (local or online). It doesn't work offline. PHP code should never be seen by a browser, it's execute from a server in a browser and outputs whatever is coded in PHP. That's what's called parsing. See also http://en.wikipedia.org/wiki/PHP .
|
bleedz129 |
Apr 6 2014, 04:49 AM
Post
#5
|
Novice Group: Members Posts: 21 Joined: 24-March 14 Member No.: 20,600 |
PHP is a server-side programming language and thus needs to run from a server (local or online). It doesn't work offline. PHP code should never be seen by a browser, it's execute from a server in a browser and outputs whatever is coded in PHP. That's what's called parsing. See also http://en.wikipedia.org/wiki/PHP . Ah. I need to publish the website to have it work then correct ? understood today it will be done |
jimlongo |
Apr 6 2014, 07:50 AM
Post
#6
|
This is My Life Group: Members Posts: 1,128 Joined: 24-August 06 From: t-dot Member No.: 16 |
Or try XAMPP or similar local web server so you can develop PHP on your computer.
https://www.apachefriends.org/index.html |
Frederiek |
Apr 6 2014, 07:55 AM
Post
#7
|
Programming Fanatic Group: Members Posts: 5,146 Joined: 23-August 06 From: Europe Member No.: 9 |
As long as PHP is installed on the server where you publish it. A web hosting (shared) server usually should have that installed by default. You can check that with a small PHP file.
Put the following in a file: CODE <?php phpinfo(); ?> Save it as info.php, upload to your web host and run it in your browser from your domain (http://yourfulldomainname/info.php). You then should see the PHP version and a list of its configuration. On a dedicated server however, you need to install everything yourself, including the server software and anything else. |
Christian J |
Apr 6 2014, 08:41 AM
Post
#8
|
. Group: WDG Moderators Posts: 9,653 Joined: 10-August 06 Member No.: 7 |
I removed the email address in the OP's code example so spambots won't find it.
|
Lo-Fi Version | Time is now: 19th April 2024 - 12:53 PM |