Création
d'entreprise
Posez votre question Signaler

Crontab et execution php

oyer - Dernière réponse le 17 oct. 2008 à 12:57
Bonjour,

je voulais savoir si il était possible de lancé une page php (envoie de mail) avec crontab.
Sachant que ma page se fermeras automatiquement au bout de 5mn.

merci de vos reponses
Lire la suite 

Crontab et execution php »

6 réponses
Réponse
+8
moins plus
je ne sais pas si c'est toujours d'actualité, en tout cas voici comment nous exécutons du PHP à parti de cron:

# m h  dom mon dow   command

15 6 * * * (php5 /var/www/INTERNE/crons/stats_parssing_logs.php)
30 6 * * * (php5 /var/www/INTERNE/crons/marquage_visite_aco.php)
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir Oyer,

J'ai le regret de te dire que je ne comprend rien à ta question :P

1.

Si j'essaye de deviner ce que tu veux et que je présume que c'est exécuter un script php que tu as en local sur ton ordinateur, et ce à partir de la ligne de commande, tu peux le faire avec le programme de ligne de commande php, comme çà :

php -f fichier.php

Consulte "man php".

S'il te faut des arguments à la ligne de commande, ajoutes les et récupères les avec les variables prédéfinies argv et argc (cf. http://fr2.php.net/reserved.variables).

Le fait que la page se ferme automatiquement ne donnera rien. C'est hors sujet car ton fichier php n'est pas exécuté dans un browser.

2.

Il y a des moyens plus orthodoxes de programmer des scripts destinés à la ligne de commande que de passer par PHP (bash, Perl par exemple).

3.

Si ce n'est pas ce que tu veux faire, exprime ton problème plus clairement s'il te plait.


Dal
Ajouter un commentaire
Réponse
+0
moins plus
:), ok je vais tenter une explication.

j'ai un fichier php qui lance des mail (si on peut dire ça comme ça) pour ma newletter mensuelle.
Et je voulais faire une tache pour l'executer genre une fois par mois, le premier samedi du mois par exemple.

Voila c tout c tres succin, mais je pense que tu as repondu a une part de mon interrogation sur le sujet.
Puisque que le fichier ne se lance pas dans un browser, c dont cela que j'avais peur. Pas de browser pas d'execution
DOnc le fait de ne pas avoir de browser n'empeche pas l'execution de mon fichier ?
Ajouter un commentaire
Réponse
+0
moins plus
oyer,

PHP en ligne de commande va lancer les commandes PHP (donc tes commandes qui adressent un e-mail) et sortir *à l'écran* (standard output) le html et javascript produit par ton script PHP.

L'écran (en fait standard output) n'étant pas assez intelligent pour comprendre le javascript (je suppose que ta fermeture de page passe par une programmation javascript), il ne se passera rien de particulier.

Pour éviter de polluer les logs de cron avec les sorties de ton script PHP, une fois que tu as testé son bon fonctionnement, ajoute en fin de ligne de ton crontab :

 > /dev/null 2>&1



Dal

PS : j'ai réussi à deviner !!! Chuis trop fort moi des fois ! :D ;) :P
Ajouter un commentaire
Réponse
+0
moins plus
ok merci pour l'info, à tester !!!
effectivement je passe pas du javascript pour ma fermeture de fenetre mais c'etais dans la cas ou elle s'execute dans un browser.

Mais pourquoi me parles tu de PHP en ligne de commande ?
Ajouter un commentaire
Réponse
+0
moins plus
Parce que l'exécutable "php" qui se trouve sur ton ordinateur (chez moi il se trouve là /usr/local/bin/php) est une version ligne de commande de php.

Extrait de "man php" :

PHP(1) Scripting Language PHP(1)



NAME
php PHP Command Line Interface 'CLI'

SYNOPSIS
php [options] [ -f ] file [[--] args...]

php [options] -r code [[--] args...]

php [options] -- [ args...]


DESCRIPTION
PHP is a widely-used general-purpose scripting language that is espe-
cially suited for Web development and can be embedded into HTML. This
is the command line interface that enables you to the following:


En bref, c'est une version utilisable en ligne de commande des modules Apache php. Tu ne peux exécuter ces derniers que si Apache fonctionne. Avec PHP en ligne de commande, tu te passes de Apache.


Dal
Ajouter un commentaire
Ce document intitulé « crontab et execution php » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?