adam2311 Posted March 18, 2013 Share Posted March 18, 2013 Hi Guys I've just finished a new website and for some reason i'm having issues on the php code for the contact form. I want a Name field ( Manditory) Phone field, Email field and message field. The only field manditory is name. Now the form i have inherrited is already set up as name, email and message all with validation. Now i want to take this validation off and add a phone field. I have dont this on my contact form in page. But comign to the php config i cant get it to work. Pasted below is the code in a working state, i want to strip out all the validation as i'm not fussed if people dont put the email in and i want to add the phone data so it takes it from my form. Any ideas, help, advice would really help as i'm stuck. <?php/* Spark – Simple and Effective Rev. 6*/// Load WordPressrequire( '../../../../../wp-load.php' );// Grab all Spark theme optionsglobal $spark_options;$spark_options = get_spark_options();// Get user's email (defined in the OptionTree backend)$to_email = $spark_options['spark_user_email'];$aErrors = array();$aResults = array();/* Functions */function stripslashes_if_required($sContent) { if(get_magic_quotes_gpc()) { return stripslashes($sContent); } else { return $sContent; }}function get_current_url_path() { $sPageUrl = "http://".$_SERVER["SERVER_NAME"].$_SERVER["REQUEST_URI"]; $count = strlen(basename($sPageUrl)); $sPagePath = substr($sPageUrl,0, -$count); return $sPagePath;}function output($aErrors = array(), $aResults = array()){ // Output JSON $bFormSent = empty($aErrors) ? true : false; $aCombinedData = array( 'bFormSent' => $bFormSent, 'aErrors' => $aErrors, 'aResults' => $aResults ); header('Content-type: application/json'); echo json_encode($aCombinedData); exit;}// Check supported version of PHPif (version_compare(PHP_VERSION, '5.2.0', '<')) { // PHP 5.2 is required for the safety filters used in this script $aErrors[] = 'Unsupported PHP version. <br /><em>Minimum requirement is 5.2.<br />Your version is '. PHP_VERSION .'.</em>'; output($aErrors);}if (!empty($_POST)) { // Form posted? // Get a safe-sanitized version of the posted data $sFromEmail = filter_input(INPUT_POST, 'email', FILTER_SANITIZE_EMAIL); $sFromName = filter_input(INPUT_POST, 'name', FILTER_SANITIZE_STRING, FILTER_FLAG_STRIP_LOW); $sMessage = stripslashes_if_required($_POST['message']); $sMessage .= "\r\n--\r\nEmail sent from ". get_current_url_path(); $sHeaders = "From: '$sFromName' <$sFromEmail>"."\r\n"; $sHeaders .= "Reply-To: '$sFromName' <$sFromEmail>"; if (filter_var($sFromEmail, FILTER_VALIDATE_EMAIL)) { // Valid email format? $bMailSent = mail($to_email, "New inquiry from $sFromName", $sMessage, $sHeaders); if ($bMailSent) { $aResults[] = "Message sent, thank you!"; } else { $aErrors[] = "Message not sent, please try again later."; } } else { $aErrors[] = 'Invalid email address.'; }} else { // Nothing posted $aErrors[] = 'Empty data submited.';} output($aErrors, $aResults); Quote Link to comment https://forums.phpfreaks.com/topic/275809-contact-form-on-my-website/ 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.