:: **Zploit** v1.0 | Current Path: **/home/kreativepixelz/www/demo/soulmeetvivah.com/backend/**
:: Editing File: enquiry.php
<?php session_start(); include('db.php'); // Set response header to JSON header('Content-Type: application/json'); $profileFor = $_POST['profile_for'] ?? ''; $fullName = $_POST['full_name'] ?? ''; $mobileNo = $_POST['mobile_no'] ?? ''; $religion = $_POST['religion'] ?? ''; $actionText = ''; $status = 'Pending'; // default to Pending if not provided // Simple validation if (empty($profileFor) || empty($fullName) || empty($mobileNo) || empty($religion)) { echo json_encode(['status' => 'error', 'message' => 'All required fields must be filled.']); exit; } // Normalize mobile number (remove spaces, dashes, etc.) $mobileNo = preg_replace('/[^0-9]/', '', $mobileNo); $fullName = trim($fullName); // Check for duplicate submission within last 5 minutes (same mobile number and name) $checkDuplicate = $conn->prepare("SELECT id FROM enquiry WHERE mobile_no = ? AND full_name = ? AND submitted_at > DATE_SUB(NOW(), INTERVAL 5 MINUTE) ORDER BY submitted_at DESC LIMIT 1"); $checkDuplicate->bind_param("ss", $mobileNo, $fullName); $checkDuplicate->execute(); $duplicateResult = $checkDuplicate->get_result(); if ($duplicateResult->num_rows > 0) { $checkDuplicate->close(); echo json_encode(['status' => 'error', 'message' => 'You have already submitted an enquiry recently. Please wait a few minutes before submitting again.']); exit; } $checkDuplicate->close(); // Check session-based duplicate prevention (prevent rapid multiple submissions) $sessionKey = 'enquiry_submitted_' . md5($mobileNo . $fullName); if (isset($_SESSION[$sessionKey])) { $lastSubmission = $_SESSION[$sessionKey]; // If submitted within last 30 seconds, block it if (time() - $lastSubmission < 30) { echo json_encode(['status' => 'error', 'message' => 'Please wait a moment before submitting again.']); exit; } } // Insert into enquiry table $stmt = $conn->prepare("INSERT INTO enquiry (profile_for, full_name, mobile_no, religion, action_text, status) VALUES (?, ?, ?, ?, ?, ?)"); $stmt->bind_param("ssssss", $profileFor, $fullName, $mobileNo, $religion, $actionText, $status); // Execute and check if ($stmt->execute()) { // Set session flag to prevent duplicate submissions $_SESSION[$sessionKey] = time(); echo json_encode(['status' => 'success', 'message' => 'Enquiry submitted successfully!']); } else { echo json_encode(['status' => 'error', 'message' => 'Error saving enquiry: ' . $stmt->error]); } // Close resources $stmt->close(); $conn->close(); ?>