Primer Commit
This commit is contained in:
110
ManipulacionUser.php
Normal file
110
ManipulacionUser.php
Normal file
@@ -0,0 +1,110 @@
|
||||
<?php
|
||||
|
||||
|
||||
|
||||
// Operación a realizar: consulta, inserción, actualización, eliminación, etc.
|
||||
$operacion = isset($_POST['operacion']) ? $_POST['operacion'] : '';
|
||||
|
||||
// Datos relacionados con la operación
|
||||
$correo = isset($_POST['Correo']) ? $_POST['Correo'] : '';
|
||||
$nombre = isset($_POST['Nombre']) ? $_POST['Nombre'] : '';
|
||||
$ceco = isset($_POST['Ceco']) ? $_POST['Ceco'] : '';
|
||||
$contrasena = isset($_POST['Contrasena']) ? $_POST['Contrasena'] : '';
|
||||
$fecha = isset($_POST['Fecha']) ? $_POST['Fecha'] : '';
|
||||
$unidad = isset($_POST['Unidad_de_negocio']) ? $_POST['Unidad_de_negocio'] : '';
|
||||
$centro = isset($_POST['Centro']) ? $_POST['Centro'] : '';
|
||||
$esta = isset($_POST['Estatus']) ? $_POST['Estatus'] : '';
|
||||
$foto = isset($_POST['Foto']) ? $_POST['Foto'] : '';
|
||||
$rol = isset($_POST['Rol']) ? $_POST['Rol'] : '';
|
||||
$correop = isset($_POST['Correoprov']) ? $_POST['Correoprov'] : '';
|
||||
|
||||
|
||||
// Realizar la operación según el valor de la variable $operacion
|
||||
switch ($operacion) {
|
||||
|
||||
case 'Inicio':
|
||||
|
||||
$data = array(
|
||||
'correo' => $correo,
|
||||
'password' => $contrasena,
|
||||
);
|
||||
// API Key
|
||||
include ('rutasApi.php');
|
||||
"$api_key_definition: $api_key";
|
||||
|
||||
// Inicializar cURL
|
||||
$ch = curl_init();
|
||||
|
||||
// Establecer la URL
|
||||
$url = $loginUser;
|
||||
|
||||
curl_setopt($ch, CURLOPT_URL, $url);
|
||||
|
||||
curl_setopt($ch, CURLOPT_POST, 1);
|
||||
|
||||
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
|
||||
|
||||
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
|
||||
"$api_key_definition: $api_key"
|
||||
)
|
||||
);
|
||||
|
||||
// Configurar para recibir la respuesta como cadena
|
||||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
|
||||
|
||||
// Ejecutar la petición
|
||||
$response = curl_exec($ch);
|
||||
|
||||
// Verificar si hay errores
|
||||
if ($response === false) {
|
||||
echo "Error al realizar la solicitud.";
|
||||
} else {
|
||||
// Decodificar la respuesta JSON
|
||||
$user = json_decode($response, true);
|
||||
|
||||
if($user['estatus']==0)
|
||||
{
|
||||
echo json_encode(['resultado' => -1, 'mensaje' => 'Credenciales Incorrectas']);
|
||||
}
|
||||
session_start();
|
||||
// Almacenar los datos del usuario en variables de sesión
|
||||
$_SESSION['user_id'] = $user['correo'];
|
||||
$_SESSION['username'] = $user['nombre'];
|
||||
//$_SESSION['CeCo'] = $user['ceco']??'';
|
||||
//$_SESSION['Unidad_de_negocio'] = $user['unidad'];
|
||||
//$_SESSION['centro'] = $user['centro'];
|
||||
$_SESSION['rol'] = $user['rol'];
|
||||
|
||||
if (!isset($_SESSION['csrf_token'])) {
|
||||
$_SESSION['csrf_token'] = bin2hex(random_bytes(32)); // Genera un token CSRF de 32 bytes
|
||||
}
|
||||
setcookie('csrf_token', $_SESSION['csrf_token'], 0, '/');
|
||||
|
||||
|
||||
if ($_SESSION['rol'] == '0') {
|
||||
echo '1';
|
||||
} else if ($_SESSION['rol'] == '1') {
|
||||
echo 'admin';
|
||||
} else if ($_SESSION['rol'] == '99') {
|
||||
echo 'admin';
|
||||
}
|
||||
|
||||
exit();
|
||||
}
|
||||
curl_close($ch);
|
||||
break;
|
||||
|
||||
default:
|
||||
// Operación no válida
|
||||
echo json_encode(['resultado' => -1, 'mensaje' => 'Operación no válida']);
|
||||
break;
|
||||
}
|
||||
|
||||
function validarSesion()
|
||||
{
|
||||
session_start();
|
||||
if (!isset($_COOKIE['csrf_token']) || $_COOKIE['csrf_token'] !== $_SESSION['csrf_token']) {
|
||||
http_response_code(403);
|
||||
exit();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user