+: token.class.php y cron/actualizar_tokens

token.class.php: creacion de clase y metodo para desctivar tokens todos
los tokens con fecha inferior a la del momento de ejecución.
actualizar_tokens.php: creación de archivo para ser llamado por 'cron'.
This commit is contained in:
devfzn 2023-03-26 21:14:03 -03:00
parent e34e1b37c0
commit eea515c805
Signed by: devfzn
GPG Key ID: E070ECF4A754FDB1
4 changed files with 58 additions and 12 deletions

View File

@ -1,5 +1,12 @@
# Apuntes PHP REST API # Apuntes PHP REST API
Proyecto realizado con fines didácticos, con el propósito de comprender la
creación y funcionamiento de una API básica utilizando **Php** y **Apache**.
Además de servir de introducción los mismos.
Las clases, metodos y funciones creadas dentro de este proyecto cumplen este
propósito. No estan diseñadas para correr en un entorno de producción.
### Requerimientos ### Requerimientos
[MariaDB](https://mariadb.com/docs/), [Apache](https://httpd.apache.org/docs/) [MariaDB](https://mariadb.com/docs/), [Apache](https://httpd.apache.org/docs/)
@ -36,7 +43,9 @@ cd /var/www/
sudo ln -s $HOME/projects/apirest html sudo ln -s $HOME/projects/apirest html
``` ```
`/etc/apache2/apache2.conf` Editar archivo de configuración de apache `sudoedit /etc/apache2/apache2.conf`
Agregar:
```apache ```apache
<Directory /var/www/> <Directory /var/www/>
@ -109,3 +118,15 @@ un *string hexadecimal*.
> [Metodos HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods) > [Metodos HTTP](https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods)
#### Desactivar tokens
Cron Job para cambiar estado de tokens a ***Inactivo***
Agregar tarea: `crontab -e`
ej. Ejecutar tarea cada 5 minutos.
```sh
# m h dom mon dow command
*/5 * * * * curl localhost/php_apirest/apirest_yt/cron/actualizar_tokens &>/dev/null
```

View File

@ -200,17 +200,18 @@ class pacientes extends conexion{
} }
} }
private function actualizarToken($tokenid){ // Sin implementación
$date = date("Y m d H:i"); //private function actualizarToken($tokenid){
$query = "UPDATE usuarios_token SET Fecha = '$date' // $date = date("Y m d H:i");
WHERE TokenId = '$tokenid'"; // $query = "UPDATE usuarios_token SET Fecha = '$date'
$resp = parent::nonQuery($query); // WHERE TokenId = '$tokenid'";
if ($resp >= 1){ // $resp = parent::nonQuery($query);
return $resp; // if ($resp >= 1){
} else { // return $resp;
return 0; // } else {
} // return 0;
} // }
//}
} }
?> ?>

View File

@ -0,0 +1,16 @@
<?php
require_once 'conexion/conexion.php';
class token extends conexion{
public function actualizarToken($fecha){
$query = "UPDATE usuarios_token SET Estado = 'Inactivo'
WHERE Fecha < '$fecha' AND Estado = 'Activo'";
$verificar = parent::nonQuery(($query));
if ($verificar > 0){
return 1;
} else {
return 0;
}
}
}
?>

View File

@ -0,0 +1,8 @@
<?php
require_once '../clases/token.class.php';
$_token = new token;
$fecha = date('Y-m-d H:i');
echo $_token->actualizarToken($fecha);
?>