59 lines
1.6 KiB
PHP
59 lines
1.6 KiB
PHP
<?php
|
|
ini_set('display_errors', 1);
|
|
ini_set('display_startup_errors', 1);
|
|
error_reporting(E_ALL);
|
|
|
|
require_once __DIR__ . '/db/config.php';
|
|
|
|
session_start();
|
|
|
|
if ($_SERVER['REQUEST_METHOD'] !== 'POST') {
|
|
http_response_code(405);
|
|
die("Method Not Allowed");
|
|
}
|
|
|
|
// Basic server-side validation
|
|
$required_fields = ['first_name', 'last_name', 'phone_number', 'street_address', 'city', 'state', 'zip_code', 'did_number', 'vertical'];
|
|
foreach ($required_fields as $field) {
|
|
if (empty($_POST[$field])) {
|
|
$_SESSION['error_message'] = "Please fill in all required fields.";
|
|
header('Location: add_lead.php');
|
|
exit;
|
|
}
|
|
}
|
|
|
|
|
|
try {
|
|
$pdo = db();
|
|
|
|
$sql = "INSERT INTO leads (did_number, campaign_name, vertical, first_name, last_name, phone_number, email, street_address, city, state, zip_code, agent_name, notes) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)";
|
|
|
|
$stmt = $pdo->prepare($sql);
|
|
|
|
$stmt->execute([
|
|
$_POST['did_number'],
|
|
$_POST['campaign_name'],
|
|
$_POST['vertical'],
|
|
$_POST['first_name'],
|
|
$_POST['last_name'],
|
|
$_POST['phone_number'],
|
|
$_POST['email'],
|
|
$_POST['street_address'],
|
|
$_POST['city'],
|
|
$_POST['state'],
|
|
$_POST['zip_code'],
|
|
$_POST['agent_name'],
|
|
$_POST['notes']
|
|
]);
|
|
|
|
$_SESSION['success_message'] = "Lead added successfully!";
|
|
header('Location: index.php');
|
|
exit;
|
|
|
|
} catch (PDOException $e) {
|
|
error_log("Database error: " . $e->getMessage());
|
|
$_SESSION['error_message'] = "A database error occurred. Please try again later.";
|
|
header('Location: add_lead.php');
|
|
exit;
|
|
}
|