Google
Edit File: process_form.php
<?php session_start(); error_reporting(E_ALL); ini_set('display_errors', 0); header('Content-Type: application/json; charset=utf-8'); require_once "db.php"; function respond($status, $message) { echo json_encode([ "status" => $status, "message" => $message ]); exit; } if ($_SERVER['REQUEST_METHOD'] !== 'POST') { respond("error", "Invalid request."); } function clean($data) { return htmlspecialchars(trim($data), ENT_QUOTES, 'UTF-8'); } $name = clean($_POST['name'] ?? ''); $email = trim($_POST['email'] ?? ''); $phone = trim($_POST['phone_number'] ?? ''); $subject = clean($_POST['subject'] ?? ''); $message = clean($_POST['message'] ?? ''); $enteredCaptcha = strtolower(trim($_POST['txtverifycaptcha'] ?? '')); $sessionCaptcha = strtolower($_SESSION['captcha'] ?? ''); if ($enteredCaptcha === '') { respond("error", "Captcha required."); } if ($sessionCaptcha === '' || $enteredCaptcha !== $sessionCaptcha) { respond("error", "Captcha verification failed."); } if (strlen($name) < 3) { respond("error", "Please enter a valid name."); } if (!filter_var($email, FILTER_VALIDATE_EMAIL)) { respond("error", "Please enter a valid email."); } if (preg_match("/[\r\n]/", $email)) { respond("error", "Invalid email format."); } if (!preg_match('/^[6-9]\d{9}$/', $phone)) { respond("error", "Please enter a valid mobile number."); } $allowedSubjects = [ "Food Court Management", "Catering Services", "Events", "Brand Tie Ups", "Concerts" ]; if (!in_array($subject, $allowedSubjects, true)) { respond("error", "Please select a valid subject."); } if (strlen($message) < 10) { respond("error", "Message must be at least 10 characters."); } /* SAVE TO DATABASE */ $stmt = $conn->prepare(" INSERT INTO contact_enquiries (name, email, phone, subject, message) VALUES (?, ?, ?, ?, ?) "); if (!$stmt) { respond("error", "Database error."); } $stmt->bind_param("sssss", $name, $email, $phone, $subject, $message); if (!$stmt->execute()) { $stmt->close(); respond("error", "Failed to save enquiry."); } $stmt->close(); use PHPMailer\PHPMailer\PHPMailer; require 'PHPMailer/src/Exception.php'; require 'PHPMailer/src/PHPMailer.php'; require 'PHPMailer/src/SMTP.php'; $mail = new PHPMailer(true); try { $mail->isSMTP(); $mail->SMTPDebug = 0; $mail->Host = "smtp.gmail.com"; $mail->SMTPAuth = true; $mail->Username = "info@pinnacle-s.com"; $mail->Password = "ffqauvolsyzrwyby"; $mail->SMTPSecure = "tls"; $mail->Port = 587; $mail->CharSet = "UTF-8"; $mail->isHTML(true); $mail->setFrom("info@pinnacle-s.com", "Pinnacle Services"); $mail->addAddress("info@pinnacle-s.com"); $mail->addAddress("developers@vervemedia.co.in"); $mail->addReplyTo($email, $name); $mail->Subject = "New Website Inquiry | Pinnacle Services | " . date("d M Y"); $mail->Body = " <p>Hello Team,</p> <p>You have received a new inquiry from the Pinnacle Services website.</p> <table cellpadding='8' cellspacing='0' border='1' style='border-collapse:collapse;width:100%;font-family:Arial,sans-serif;font-size:14px;'> <tr> <td><strong>Name</strong></td> <td>{$name}</td> </tr> <tr> <td><strong>Email</strong></td> <td>{$email}</td> </tr> <tr> <td><strong>Phone</strong></td> <td>{$phone}</td> </tr> <tr> <td><strong>Subject</strong></td> <td>{$subject}</td> </tr> <tr> <td><strong>Message</strong></td> <td>" . nl2br($message) . "</td> </tr> </table> <p>Best regards,<br>Pinnacle Services Website</p> "; $mail->AltBody = " New Website Inquiry Name: {$name} Email: {$email} Phone: {$phone} Subject: {$subject} Message: {$message} "; $mail->send(); unset($_SESSION['captcha']); respond("success", "Thank you! Your message has been sent."); } catch (Exception $e) { respond("error", "Mail failed: " . $mail->ErrorInfo); }