Tache CRON OVH - utilisation des modèles Laravel 4

Par Sàyn, il y a 9 ans


Bonjour,

Pour les besoin de mon application je dois envoyer des mails automatisés grâce à une tâche CRON.
Sur mon hébergeur(OVH), j'ai créé une planification de tâche de test toutes les heures pour tester,
je redirige vers mon script www/app/commands/cron.php et je voudrais savoir comment je peux utiliser mes modèles avec Eloquent depuis ce script (cron.php).
J'ai testé avec un envoi de mail en php le script marche, dois-je inclure des choses pour utiliser Eloquent ?(use ...)

Mon but etant de récupérer toutes les adresses mails pour ensuite envoyer des mails automatiques. Cela fait déjà 2 jours que j'essaye et je n'arrive pas à utiliser les modèles depuis un script.

Exemple :

<?php mail("alex****@hotmail.fr","test222",'test222222222222222222222222'); //marche à l'exécution du script // ne marche pas à l'éxécution du script $user = User::find(1); $user->nom='testcron222'; $user->save(); ?>

Merci d'avance,
Cordialement,
Alex

8 réponses

AlexJM, il y a 9 ans

Il n'y a pas moyen que tu passes à laravel 5 ?

Sàyn, il y a 9 ans

Non c'est une grosse appli web il faudrait tout refaire pour passer à la version 5 !
Est-ce que ce que je veux faire est possible ?

Sàyn, il y a 9 ans

Merci quand même mais j'ai déjà regardé je dois éxécuter depuis un script php j'ai pas accès à une invite de commande sur le serveur pour lancer une commande!

Sàyn, il y a 9 ans

Salut,
Oui j'ai regardé mais je voulais le faire sans avoir à recréer tout le système de connection avec Eloquent..
Merci quand même mais du coup je vais juste créer une simple connection avec PDO cela devrait faire l'affaire!

Cordialement, Alex

Spiker, il y a 9 ans

Hello,

Pourquoi ne pas faire un require du bootstrap de laravel dans ton fichier cron?

El_Matella, il y a 9 ans

J'arrive peut-être quinze fois trop en retard, mais si j'étais à ta place, ce que je ferais c'est la chose suivante:

Créer une tâche cron, qui fait une requête HTTP sur une URL de ton application Laravel.

Dans ton application Laravel, lorsqu'on arrive sur cette URL, on envoie les emails.

Tu peux rajouter une logique de basic authentification si tu ne veux pas que de petits plaisantins déclenchent l'envoie d'emails à ta place