$secretKey, 'response' => $captchaResponse ]; $options = [ 'http' => [ 'header' => "Content-type: application/x-www-form-urlencoded\r\n", 'method' => 'POST', 'content' => http_build_query($data) ] ]; $context = stream_context_create($options); $result = file_get_contents($verifyUrl, false, $context); $response = json_decode($result); if (!$response->success) { die("❌ Error de verificación reCAPTCHA."); } $conn = getConnection(); $empresa = encrypt($_POST['company_name'] ?? ''); $rfc = encrypt($_POST['rfc'] ?? ''); $email = $_POST['email'] ?? ''; $telefono = $_POST['phone'] ?? ''; $archivo = $_FILES['opinion_file']; // Validar archivo if ($archivo['error'] !== 0 || pathinfo($archivo['name'], PATHINFO_EXTENSION) !== 'pdf') { die("Archivo inválido. Solo se permiten PDFs."); } // Guardar archivo $nombreArchivo = uniqid() . '_' . basename($archivo['name']); $rutaDestino = __DIR__ . '/../../storage/opiniones/' . $nombreArchivo; move_uploaded_file($archivo['tmp_name'], $rutaDestino); // Insertar en la base de datos $sql = "INSERT INTO solicitudes_importadores (company_name, rfc, email, phone, opinion_file, request_status, request_date) VALUES (?, ?, ?, ?, ?, 'pending', GETDATE())"; $params = [$empresa, $rfc, $email, $telefono, $nombreArchivo]; $stmt = sqlsrv_query($conn, $sql, $params); if ($stmt === false) { die(print_r(sqlsrv_errors(), true)); } $mail = new PHPMailer(true); try { // Configuración SMTP $mail->isSMTP(); $mail->Host = 'secure.emailsrvr.com'; $mail->SMTPAuth = true; $mail->Username = 'noreply@aduanasoft.com.mx'; $mail->Password = $_ENV['SMTP_PASS']; // desde el .env $mail->SMTPSecure = PHPMailer::ENCRYPTION_STARTTLS; $mail->Port = 587; // Correo remitente y destinatario $mail->setFrom('noreply@aduanasoft.com.mx', 'SIIH | AduanaSoft'); $mail->addAddress($email); // destinatario principal // Formato y contenido $mail->CharSet = 'UTF-8'; $mail->isHTML(true); $mail->Subject = 'Confirmación de solicitud de registro | SIIH'; $fechaRegistro = date('d/m/Y H:i'); // Consulta configuración institucional $sqlConf = "SELECT TOP 1 * FROM configuracion_sistema"; $stmtConf = sqlsrv_query($conn, $sqlConf); $conf = sqlsrv_fetch_array($stmtConf, SQLSRV_FETCH_ASSOC); $nombrePlataforma = $conf['nombre_plataforma'] ?? 'Sistema Integral para Importadores de Hidrocarburos'; $siglas = $conf['siglas'] ?? 'SIIH'; $logoUrl = $conf['logo_url'] ?? 'assets/img/logo_siih.png'; $color1 = explode(',', $conf['colores_primarios'] ?? '#003366,#0055A5')[0]; $color2 = explode(',', $conf['colores_primarios'] ?? '#003366,#0055A5')[1]; $mail->Body = "