name = stripslashes($details['name']); $this->email = trim($details['email']); $this->subject = 'Contact from Your Website'; // Subject $this->message = stripslashes($details['message']); $this->email_admin = $email_admin; $this->message_min_length = $message_min_length; $this->response_status = 1; $this->response_html = ''; } private function validateEmail(){ $regex = '/^([\w-]+(?:\.[\w-]+)*)@((?:[\w-]+\.)*\w[\w-]{0,66})\.([a-z]{2,6}(?:\.[a-z]{2})?)$/i'; if($this->email == '') { return false; } else { $string = preg_replace($regex, '', $this->email); } return empty($string) ? true : false; } private function validateFields(){ // Check name if(!$this->name) { $this->response_html .= '

Please enter your name

'; $this->response_status = 0; } // Check email if(!$this->email) { $this->response_html .= '

Please enter an e-mail address

'; $this->response_status = 0; } // Check valid email if($this->email && !$this->validateEmail()) { $this->response_html .= '

Please enter a valid e-mail address

'; $this->response_status = 0; } // Check message length if(!$this->message || strlen($this->message) < $this->message_min_length) { $this->response_html .= '

Please enter your message. It should have at least '.$this->message_min_length.' characters

'; $this->response_status = 0; } } private function sendEmail(){ $mail = mail($this->email_admin, $this->subject, $this->message, "From: ".$this->name." <".$this->email.">\r\n" ."Reply-To: ".$this->email."\r\n" ."X-Mailer: PHP/" . phpversion()); if($mail) { $this->response_status = 1; $this->response_html = '

Thank You!

'; } } function sendRequest(){ $this->validateFields(); if($this->response_status) { $this->sendEmail(); } $response = array(); $response['status'] = $this->response_status; $response['html'] = $this->response_html; echo json_encode($response); } } $contact_form = new Contact_Form($_POST['formCorreo'], $admin_email, $message_min_length); $contact_form->sendRequest(); ?>