Passer une commande système unix en php. [PHP] - PHP - Programmation
Marsh Posté le 23-10-2003 à 17:24:58
HA ??
on peut la bloquer ...bon, bonne nouvelle.
Je n'en sais rien du tout
Je vais tenter de regarder. Dans la config php surement
Je tente de regarder.
Je pensais plus à un probleme de quote ou de caractère spécial qui aurait bloqué le exec
Marsh Posté le 23-10-2003 à 17:31:20
ha oui, peut être bien le $arg qui est remplacé par la valeur de la variable $arg.
Marsh Posté le 23-10-2003 à 17:34:42
nop, ca j'ai vérifier, en faisant un echo $zorglub
Mais effectivement,
7.1.3 Directives de configuration du "Safe Mode"
[Notes en ligne]
7.1.3.1 ini.safe-mode
[Notes en ligne]
safe_mode booléen
* Cette directive active ou désactive l'option "safe mode". Lisez le chapitre 6 Sécurité pour plus d'informations.
7.1.3.2 ini.safe-mode-exec-dir
[Notes en ligne]
safe_mode_exec_dir chaîne de caractères
* Si l'option "safe mode" est activée, system() et les autres fonctions exécutant des programmes systèmes refusent de se lancer si ces programmes ne sont pas placés dans ce répertoire.
Et comme j'ai rien changé à la config de base de mandrake, ca doit être sur safe_mode.
Je cherche le php.ini
Marsh Posté le 23-10-2003 à 17:37:59
Bon, ben, mon safe mode est bien sur off ... lapin con pris.
Donc, ma question tient toujours.
Marsh Posté le 30-10-2003 à 23:02:26
bon, pour info, j'ai trouvé la réponse...
En fait, c'est apache qui n'a pas les droit de créer un fichier dans le repertoire qui m'appartient...
J'ai donc changé le
grep -Piow '$arg' ./corpus2 | sort | uniq -c > grepmot
en
grep -Piow '$arg' ./corpus2 | sort | uniq -c > /tmp/grepmot
et là, ca marche
Bon, 5 h paumées la dessus, c'est beau l'info quand ca veut
Marsh Posté le 31-10-2003 à 14:05:42
Citation : bon, pour info, j'ai trouvé la réponse... |
Fallait penser a regarder les logs d'Apache avant aussi.
Marsh Posté le 23-10-2003 à 17:19:50
Je convertis un programme perl en php. Le programme lance une commande systeme qui a cette tête :
$zorglub = "grep -Piow '$arg' ./corpus2 | sort | uniq -c > grepmot";
Que ca soit avec system : system "$zorglub";
ou exec : exec("$zorglub", $list);
Ca ne me fait rien. Si je met la commande unix directement dans un terminal, j'ai vérifier, ca donne bien qq chose
Et en perl, ca marche également impec. Où est ce que j'ai tout faux, s'il vous plait
Merci