:: **Zploit** v1.0 | Current Path: **/home/kreativepixelz/soulmeetvivah.com/member/php/**
:: Editing File: fetch_basic_search.php
<?php // Enable error reporting for debugging error_reporting(E_ALL); ini_set('display_errors', 1); ini_set('log_errors', 1); // Start output buffering to catch any unexpected output ob_start(); try { include('db.php'); if (!isset($conn)) { throw new Exception('Database connection variable not set'); } // Check if connection is valid if ($conn === false || !is_object($conn)) { $error = mysqli_connect_error(); throw new Exception('Database connection failed' . ($error ? ': ' . $error : '')); } } catch (Exception $e) { ob_end_clean(); header('Content-Type: application/json'); echo json_encode(array('error' => 'Failed to load database: ' . $e->getMessage())); exit; } catch (Error $e) { ob_end_clean(); header('Content-Type: application/json'); echo json_encode(array('error' => 'PHP Error: ' . $e->getMessage() . ' in ' . $e->getFile() . ':' . $e->getLine())); exit; } header('Content-Type: application/json'); // Check if required parameters are set if (!isset($_POST['user_id']) || !isset($_POST['search_text'])) { ob_end_clean(); echo json_encode(array('error' => 'Missing required parameters')); exit; } $user_id = $_POST['user_id']; $search_text = trim($_POST['search_text']); // Validate inputs if (empty($user_id) || empty($search_text)) { ob_end_clean(); echo json_encode(array('error' => 'User ID and search text are required')); exit; } // Check database connection (already checked above, but double-check) if (!isset($conn) || $conn === false) { ob_end_clean(); echo json_encode(array('error' => 'Database connection failed')); exit; } // Escape inputs immediately to prevent SQL injection $user_id = mysqli_real_escape_string($conn, $user_id); $search_text = mysqli_real_escape_string($conn, $search_text); $sql = "SELECT * FROM user_details WHERE user_id = '$user_id'"; $result = mysqli_query($conn, $sql); $gender = ''; if ($result && mysqli_num_rows($result) > 0) { foreach ($result as $row) { $gender = $row['gender']; } } // If gender is not set, return error if (empty($gender)) { ob_end_clean(); echo json_encode(array('error' => 'User gender not found')); exit; } $plans_type = ''; $memeber_plans = "SELECT * FROM members_current_plan WHERE user_id = '$user_id'"; $result_plans = mysqli_query($conn, $memeber_plans); if ($result_plans && mysqli_num_rows($result_plans) > 0) { foreach ($result_plans as $row) { $plans_type = $row['plans_type']; } } function ageCalculator($dob){ return $dob; // if(!empty($dob)){ // $birthdate = new DateTime($dob); // $today = new DateTime('today'); // $age = $birthdate->diff($today)->y; // return $age; // }else{ // return 0; // } } function fetchReligion($religion, $conn){ $sql_religion_fetch = "SELECT * FROM religion WHERE religion_id = '$religion'"; $result_religio_fetch = mysqli_query($conn, $sql_religion_fetch); if (mysqli_num_rows($result_religio_fetch) > 0) { foreach ($result_religio_fetch as $row) { return $row['religion_name']; } } else{ return null; } } function fetchCaste($caste, $conn){ $sql_caste_fetch = "SELECT * FROM castes WHERE caste_id = '$caste'"; $result_caste_fetch = mysqli_query($conn, $sql_caste_fetch); if (mysqli_num_rows($result_caste_fetch) > 0) { foreach ($result_caste_fetch as $row) { return $row['caste_name']; } } else{ return null; } } function alreadyRequestedornot($re_profile_id, $user_id, $conn){ try { $logged_user_id = mysqli_real_escape_string($conn, $user_id); $profile_user_id = mysqli_real_escape_string($conn, $re_profile_id); // Check if table exists first $table_check = mysqli_query($conn, "SHOW TABLES LIKE 'chat_request'"); if (!$table_check || mysqli_num_rows($table_check) == 0) { // Table doesn't exist, return null return null; } $sql = "SELECT * FROM chat_request WHERE chat_request_profile_id = '$profile_user_id' AND chat_request_from = '$logged_user_id'"; $result = mysqli_query($conn, $sql); if ($result && mysqli_num_rows($result) > 0) { foreach ($result as $row) { return $row['status']; } } } catch (Exception $e) { // If any error occurs, just return null return null; } return null; } $cover_img = ''; $member_riv_user_id = ''; $memeber_token = ''; $member_user_id = ''; $profile_img = ''; $display_name_as_title = ''; $living_in = ''; $marital_status = ''; $religion = ''; $caste = ''; $sub_caste = ''; $community = ''; $working_as = ''; $first_name = ''; $last_name = ''; $request = ''; $age = ''; $data = array(); // Variables are already escaped above $sql_matches = "SELECT *, user_details.sv_user_id as member_riv_user_id, user_details.sv_user_id as member_sv_user_id, user_details.user_id as member_user_id, user_details.user_token as memeber_token FROM user_details INNER JOIN privacy_setting ON user_details.user_id = privacy_setting.user_id INNER JOIN profile_images ON user_details.user_id = profile_images.user_id LEFT JOIN personal_details ON user_details.user_id = personal_details.user_id LEFT JOIN education_profession ON user_details.user_id = education_profession.user_id WHERE user_details.verified_status = '1' AND user_details.sv_user_id = '$search_text' AND user_details.visible_status = '1' AND user_details.gender != '$gender' GROUP BY user_details.user_id ORDER BY user_details.user_id DESC"; $result_matches = mysqli_query($conn, $sql_matches); // Check for SQL errors if (!$result_matches) { ob_end_clean(); echo json_encode(array('error' => 'Database query failed: ' . mysqli_error($conn))); exit; } if (mysqli_num_rows($result_matches) > 0) { foreach ($result_matches as $row) { $profile_id = $row['user_id']; $cover_img = $row['cover_img']; $member_riv_user_id = $row['member_riv_user_id']; $memeber_token = $row['memeber_token']; $member_user_id = $row['member_user_id']; $profile_img = $row['profile_img']; $display_name_as_title = $row['display_name_as_title']; $living_in = $row['living_in']; $marital_status = $row['marital_status']; $religion = fetchReligion($row['religion'], $conn); $caste = fetchCaste($row['caste'], $conn); $sub_caste = $row['sub_caste']; $community = $row['community']; $working_as = $row['working_as']; $first_name = $row['first_name']; $last_name = $row['last_name']; // Safely get request status (table might not exist) $request = null; try { $request = alreadyRequestedornot($row['member_user_id'], $user_id, $conn); } catch (Exception $e) { $request = null; } $age = $row['age']; $data[] = array( "cover_img" => $cover_img, "member_riv_user_id" => $member_riv_user_id, "member_sv_user_id" => $member_riv_user_id, "memeber_token" => $memeber_token, "member_token" => $memeber_token, "member_user_id" => $member_user_id, "profile_id" => $member_user_id, "profile_img" => $profile_img, "display_name_as_title" => $display_name_as_title, "living_in" => $living_in, "marital_status" => $marital_status, "religion" => $religion, "caste" => $caste, "sub_caste" => $sub_caste, "community" => $community, "working_as" => $working_as, "first_name" => $first_name, "last_name" => $last_name, "request" => $request, "gender" => $gender, "plans_type"=>$plans_type, "age"=>$age ); } } // Clean any unexpected output ob_end_clean(); // Encoding the array into JSON format $json_data = json_encode($data); // Check for JSON encoding errors if ($json_data === false) { ob_end_clean(); echo json_encode(array('error' => 'Failed to encode results: ' . json_last_error_msg())); exit; } // Outputting the JSON data echo $json_data; ?>