Script para leer y modificar BBDD Mysql de Prestashop
En muchas tiendas es necesario tener una serie de scripts automáticos que ejecutan los crones del servidor que realizan pequeñas tareas, modificaciones en la base de datos Mysql, cálculos…
Podeis crearos una carpeta dentro de httpdocs llamada «crones» o bien crear los archivos directamente en la raiz, supongamos que lo hacemos en la raiz, y que creamos un fichero llamado «tarea_cron.php.
Para llamar a la BBDD simplemente tenemos que incluir los siguientes ficheros en el Script:
include './config/settings.inc.php'; include './config/defines.inc.php'; include './config/config.inc.php'; include_once('./init.php');
Y después hacer lo que necesitemos, llamar una clase, llamar a la bbdd…
Por ejemplo, el siguiente script modifica un valor de la bbdd para un chat online, lo que hace es cambiar el mensaje de bienvenida del chat cuando no es horario comercial. Ejecuto este script desde el cron a las 18:00 que es cuando los de la oficina se van a casa.
<?php //MODIFICACIÓN MENSAJE BIENVENIDA //NUESTRO HORARIO COMERCIAL ES DE 9:00 a 14:00 y de 15:30 a 18:00 include './config/settings.inc.php'; include './config/defines.inc.php'; include './config/config.inc.php'; include_once('./init.php'); $sql = 'UPDATE ps_configuration SET value="NUESTRO HORARIO COMERCIAL ES DE 9:00 a 14:00 y de 15:30 a 18:00" WHERE name LIKE "%belvg_livechat_hello_message%"'; if (!Db::getInstance()->execute($sql)) echo "Error cambiando mensaje de bienvenida"; else echo "Cambiado mensaje de bienvenida del Chat informando de horario comercial."; ?>
Por otro lado tengo otro script igual que se ejecuta a las 9:00 para volverlo a cambiar a horario de atención al público.
Estos son los crones que teneis que poner en Linux:
0 18 * * * -wget -q -O /dev/null "http://dominiodetutienda.com/script1.php" 0 9 * * * -wget -q -O /dev/null "http://dominiodetutienda.com/script2.php"