Joycie Posted December 14, 2012 Share Posted December 14, 2012 (edited) Hi there! I have only just started making my first page and have thrown myself in the deep end as it seems. My contact page has turned out quite professional but I keep receiving error messages after 'sent'. Previously from my localhost test server the emails did get sent but I did also receive the error message - now, from my remote server (GoDaddy) it does not get sent at all and the error is still there! I receive the following error: Warning: mail() [function.mail]: SMTP server response: 451 See http://pobox.com/~djb/docs/smtplf.html. in D:\hosting\12345678\html\contact-page.php on line 54 this is referring to: // if validation passed ok then send the email mail($email_to, $email_subject, $email_content); It seems as if it tries to contact a 3rd party server but I seriously don't have any idea where I can adjust that in my script :-\ I have searched and adjusted some things but simply cannot find the actual issue...anyone here who can help me please? Thanks x Edited December 15, 2012 by PFMaBiSmAd removed wysiwyg formatting Quote Link to comment https://forums.phpfreaks.com/topic/272005-coding-error-in-contact-form/ Share on other sites More sharing options...
mrMarcus Posted December 14, 2012 Share Posted December 14, 2012 Can you post the email processing script please. Primarily the part that builds the $email_content. Quote Link to comment https://forums.phpfreaks.com/topic/272005-coding-error-in-contact-form/#findComment-1399443 Share on other sites More sharing options...
Joycie Posted December 14, 2012 Author Share Posted December 14, 2012 Hi Marcus! thanks for wanting to have a look at the php script hope you'll know the solution ;-) <?php // Set email variables $email_to = 'me@mail.net'; $email_subject = 'Feedback Form'; // Set required fields $required_fields = array('fullname','email','comment'); // set error messages $error_messages = array( 'fullname' => 'Please enter a Name to proceed.', 'email' => 'Please enter a valid Email Address to continue.', 'comment' => 'Please enter your Message to continue.' ); // Set form status $form_complete = FALSE; // configure validation array $validation = array(); // check form submittal if(!empty($_POST)) { // Sanitise POST array foreach($_POST as $key => $value) $_POST[$key] = remove_email_injection(trim($value)); // Loop into required fields and make sure they match our needs foreach($required_fields as $field) { // the field has been submitted? if(!array_key_exists($field, $_POST)) array_push($validation, $field); // check there is information in the field? if($_POST[$field] == '') array_push($validation, $field); // validate the email address supplied if($field == 'email') if(!validate_email_address($_POST[$field])) array_push($validation, $field); } // basic validation result if(count($validation) == 0) { // Prepare our content string $email_content = 'New Website Comment: ' . "\n\n"; // simple email content foreach($_POST as $key => $value) { if($key != 'submit') $email_content .= $key . ': ' . $value . "\n"; } // if validation passed ok then send the email mail($email_to, $email_subject, $email_content); // Update form switch $form_complete = TRUE; } } function validate_email_address($email = FALSE) { return (preg_match('/^[^@\s]+@([-a-z0-9]+\.)+[a-z]{2,}$/i', $email))? TRUE : FALSE; } function remove_email_injection($field = FALSE) { return (str_replace(array("\r", "\n", "%0a", "%0d", "Content-Type:", "bcc:","to:","cc:"), '', $field)); } ?> Quote Link to comment https://forums.phpfreaks.com/topic/272005-coding-error-in-contact-form/#findComment-1399454 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.