OVH Community, votre nouvel espace communautaire.

Exec() dans un batch


Gaston_Phone
16/02/2011, 17h14
Je ne comprends rien à ton histoire.

Si ton script de départ est un PHP, pourquoi passer par un exec pour exécuter dans une boucle un autre script PHP. ?

Il est tellement plus simple d'utiliser des includes en PHP.

snut
16/02/2011, 16h46
Code:
n'execute pas le script (censé juste mettre à jour ma BDD)
cron.php exécuté depuis mon navigateur, oui.

j'y comprends rien.

snut
16/02/2011, 13h18
en fait, j'avais modifié mon script

exec("php cron.php $id");

et dans le fichier cron.php j'avais fait l'appel suivant

$start = $argv[1];

pour récupérer l'id de la variable passée pour le script cron.php (début d'un LIMIT dans une req SQL) mais ça ne fonctionnait pas non plus.

actuellement, mon cron.php appelle $start en tant que $_GET[start] et ça fonctionne très bien, mais avec l'exec, le script n'est pas exécuté.

sqweez
16/02/2011, 13h15
Ca ne fonctionne pas comme tu veux ou ça ne se lance pas ?
Attention à la gestion des arguments quand tu lances en ligne de commande,
tu peux oublier les $_GET...
http://www.php.net/manual/fr/reserve...ables.argv.php

snut
16/02/2011, 13h10
avec espace ça ne fonctionne pas non plus

sqweez
16/02/2011, 12h24
Je crois pas qu'on puisse appeler un script PHP de cette façon en ligne de commande.
Remplace le "?" par un espace, ça devrait être mieux.

snut
16/02/2011, 11h18
bonjour à tous

j'ai un site sur un plan perso, et quand dans un script php j'essaye ça

Code:
for($i=0;$i<50;$i++) :
	exec('/usr/local/bin/php.BETA /homez.XXX/monsite/www/cron.php?start='.$i);
endfor;
le exec n'execute pas le script PHP.

help !