41 lines
1.5 KiB
PHP
41 lines
1.5 KiB
PHP
<?php
|
|
set_time_limit(120);
|
|
header('Content-Type: application/json');
|
|
|
|
$data = json_decode(file_get_contents('php://input'), true);
|
|
|
|
if (!isset($data['telefono']) || empty($data['telefono'])) {
|
|
echo json_encode(['success' => false, 'message' => 'Falta el teléfono']);
|
|
exit;
|
|
}
|
|
|
|
// 1. Limpiamos el número y le agregamos el 549 de Argentina si no lo tiene
|
|
$telefono = preg_replace('/[^0-9]/', '', $data['telefono']);
|
|
if (substr($telefono, 0, 3) !== '549') {
|
|
$telefono = '549' . ltrim($telefono, '0');
|
|
}
|
|
|
|
$nombre = $data['nombre'];
|
|
|
|
// 2. Generamos el código
|
|
$codigoGenerado = (string) rand(1000, 9999);
|
|
$mensaje = "Hola $nombre, tu código de verificación para Complejo Cap1tan es: *$codigoGenerado*";
|
|
|
|
// 3. Ejecutamos Python en SEGUNDO PLANO (Asíncrono para Windows)
|
|
$ruta_script = "C:\\xampp\\htdocs\\TP-Taller\\ProyectoTaller\\python\\Enviar_WSP.py";
|
|
|
|
// Armamos el comando base
|
|
$comando_python = escapeshellcmd("python \"$ruta_script\" \"$telefono\" \"$mensaje\"");
|
|
|
|
// "start /B" inicia el proceso sin abrir una nueva ventana de CMD.
|
|
// "1> NUL 2>&1" tira a la basura los mensajes de consola de Python para que PHP no se quede esperando a leerlos.
|
|
// popen() y pclose() abren el proceso y lo cierran al instante en PHP, dejando a Python trabajando solo.
|
|
pclose(popen("start /B " . $comando_python . " 1> NUL 2>&1", "r"));
|
|
|
|
// 4. Devolvemos la respuesta INMEDIATAMENTE al JavaScript
|
|
echo json_encode([
|
|
'success' => true,
|
|
'codigo' => $codigoGenerado,
|
|
'debug_python' => 'Ejecutando en segundo plano... (No se captura salida)'
|
|
]);
|
|
?>
|