Pb exec selon version ????

Résolu
Signaler
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006
-
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Bonjour, j'ai un problème avec la fonction exec.

En effet, j'avais développé une appli avec mon apache 2.0 php 5.0.3., tout fonctionnait très bien (non sans mal ...) mais tout marchait normalement, puis j'ai souhaité le mettre sur un autre serveur WAMP5 apache 1.3.33 php 5.0.3 pour la mise en application et là et ben la fonction exec ne semble plus fonctionner !!! n'étant pas un super crack !! je sais pas si cela peut venir des différentes versions

Est-ce que quelqu'un peut m'aider ????!!! je croyais que tout roulait parfaitement et quand j'ai voulu tout installé pan ça marche plus !!!

au cas où je mets mon exec mais bon ça marchait avant donc ...

exec ("exportxls.bat");

et ce programme existe bien et marche normalement etc ...

MERCI !!!!!!!!!!!!!!!
A voir également:

12 réponses

Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Boah, ca arrive...! :-)
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Hello,



qu'est ce qui ne marche pas ? As tu un message d'erreur ?

Vu ton exec (), la, le fichier exportxls.bat se trouve t il bien dans
le meme repertoire que ton script php qui lance le exec () ?
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

non je n'ai pas de message d'erreur !!!
Tout fonctionne normalement dans mon programme (cf prog plus bas) il fait bien une copie du fichier dans le bon répertoire mais il n'execute pas le exec !!! alors que oui le fichier exportxls.bat est bien dans le même répertoire !!! et il n'y pas pas de problème non plus dans mon .bat car lorsque je l'execute manuellement ça fonctionne !!!

Je comprends plus rien !! tout fonctionnait bien avant et puis là ça déconne !!

voici un morceau plus long de mon script :
<?php


// affichage des parametres
echo $nom_fichier;
$date= date ("Y-m-j");
$extent=substr($nom_fichier, -3, 3);
$fich=substr($nom_fichier, -13, 13);
echo $extent;
echo $fich;


if ($extent=="xls")
{
if(copy($nom_fichier,"../data/$fich"))
{
echo 'Le fichier a été copié dans le répertoire xls.';
exec ("exportxls.bat");
}
else
{
echo 'Erreur';
}
}

else if ($extent=="txt")
{
if(copy($nom_fichier,"../data/$fich"))
{
echo 'Le fichier a été copié dans le répertoire txt.';
exec ("exporttxt.bat");
}
else
{
echo 'Erreur';
}
}

else if ($extent=="csv")
{
if(copy($nom_fichier,"../data/$fich"))
{
echo 'Le fichier a été copié dans le répertoire csv.';
exec ("exportcsv.bat");
}
else
{
echo 'Erreur';
}
}



?>
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
le safe mode n'est pas active ?

http://de3.php.net/manual/fr/features.safe-mode.php#ini.safe-mode-exec-dir



Ca : echo 'Le fichier a été copié dans le répertoire csv.';

ca s'affiche ? (ou un autre, enfin est-ce qu'il rentre bien dans tes conditions?)



Essaye, sinon, avec les autres commandes : system, passthru etc...
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

oui oui ça s'affiche bien !!! c'est ça qui est bizarre au début je me disais que la condition n'était pas bonne etc ... mais non il rentre bien dans le if puisqu'il copie bien le fichier

le safe mode ça doit être modifié??? je comprends pas tout c'est dans le php.ini ??? je vais regarder

Bon ben je vais essayer avec les autres ...!!!
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Ouais, tu regardes dans php.ini, tu dois avoir cette ligne :

safe_mode = Off



si c'est a On, c'est pas bon ;-) Enfin ca peut etre bon mais tu dois alors modifier quelques options du safe mode.
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

alors j'ai essayé avec passthru et ça ne marche pas non plus mais par contre un truc bizarre c'est qu'il m'affiche quand même ce que j'ai dans mon .bat !!!!
voici la page en sortie :
Traitement d'enregistrement de la source de données.
Merci de patienter.
avantC:\\wamp\\www\\CD\\sir2002S2.txtaprès C:\\wamp\\www\\CD\\sir2002S2.txttxtsir2002S2.txtLe fichier a été copié dans le répertoire txt. c:\wamp\www\forms>"[file://Pc-dg/SAS/SAS \\Pc-dg\SAS\SAS] 9.1\sas.exe" -sysin "[file://Pc-dg/www/forms/exporttxt.sas \\Pc-dg\www\forms\exporttxt.sas]" Fin de traitement d'enregistrement de la source de données.



en gras c'est mon programme dans mon bat !!!
mais par contre il ne la toujours pas executé !!! :- (
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

alors j'ai regardé le php.ini,
le safe_mode=off

et safe_mode_exec (c'est vide )! !!!!

je comprends vraiment pas pourquoi il n'execute pas mon .bat !!!!!!!!!
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

re-bonjour,

alors depuis hier ça ne marche toujours pas mais j'ai quelques nouveautés peut être que cela peut vous mettre la puce à l'oreille !!

lorsque je clique manuellement sur mon .bat -> ça marche !!

lorsque de ma page php, j'appelle le .bat, il "semble" rentrer dans le point bat car dans mon gestionnaire de tâche, l'executable apparait puis disparait !!! donc c'est qu'il execute bien au moins une partie du point bat !!
Est-ce que cela peut venir de windows xp ??? avant j'étais sous windows 2000 ??!!

ou alors cela vient du programme a éxécuter mais je ne comprends pas bien pourquoi alors ça fonctionne manuellement !!!

Merci de votre aide !!!!
J'suis désespéré ...........
Messages postés
10839
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
25
Hello,



s'il fonctionne manuellement, ca ne doit pas venir de ton batch.

je ne sais pas, franchement...

probleme de droits peut-etre...?

Mets ton batch ici quand meme.
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

voici mon fichier exporttxt.bat :

"[file://Pc-dg/SAS/SAS \\Pc-dg\SAS\SAS] 9.1\sas.exe" -sysin [file://Pc-dg/www/forms/exporttxt.sas \\Pc-dg\www\forms\exporttxt.sas]

donc ce que je vois dans mon gestionnaire de tâche c'est le sas.exe qui se lance mais qui n'effectue pas le programme .sas

Franchement je comprens pas sur ma machine ça fonctionne parfaitement et sur l'autre ça ne marche pas, je vais essayé de voir avec les editeurs du logiciel mais je crains fort qu'il n'est pas de solution non plus !!
Je vais essaye de voir pour lancer aussi une autre application que celle là pour voir si cela vient du logiciel proprement dit mais bon ça me parait bien bizarre car il lance bien le .exe donc bon !!!!
merci en tout cas de ta patience et ta dispo !!!
Messages postés
244
Date d'inscription
jeudi 14 avril 2005
Statut
Membre
Dernière intervention
12 juillet 2006

alors là je ne comprends pas vraiment mais ça fonctionne désormais !!!
je pense en effet qu'il s'agissait de droits !!! j'avais pourtant modifié les droits déjà auparavant mais bon !!! peut être faut il un temps pour que les droits soit effectifs !!

Mais bon toujours est-il que cela fonctionne !!!!

Navré d'avoir pris de ton temps et encore merci pour ta patience !!! je me trouve un peu con car il s'agissait je pense ??!!! juste d'une histoire de partage et droit !!!

Merci bien !!!