IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Système] Problème de droits en PHP (unable to fork)


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 94
    Par défaut [Système] Problème de droits en PHP (unable to fork)
    Bonjour,

    voilà je suis en train d'installer sur un serveur windows 2003, un systême de paiement sécurisé (Cyberplus). Il m'est impossible de lancer les tests avant production car j'obtiens ce message d'erreur :

    Warning: exec(): Unable to fork [C:\cyberplus\payment\bin\request merchant_id=038862749811111 merchant_country=fr amount=100 currency_code=978 pathfile=C:\cyberplus\payment\param\pathfile] in C:\Inetpub\vhosts\mondomaine.com\cgi-bin\call_request.php on line 99
    Après avoir passé une journée avec la hot line Atos (que des bleus robotisés) on m'a dit que s'était un problème de droit. J'ai donc ajouter les droits IUSR (internet Users) sur tous les dossiers nécessitant un accés en lecture et écriture, et aussi sur le cmd.exe de windows\system32.

    Cela ne fonctionne toujours pas...quelqu'un aurait t'il déjà rencontrer ce problème ?

    Merci d'avance de votre aide tooujours précieuse.

  2. #2
    Membre émérite
    Avatar de Linaa
    Profil pro
    Inscrit en
    Avril 2005
    Messages
    987
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2005
    Messages : 987
    Par défaut
    Oui, mais...
    Quel est le code qui produit cette erreur ?

  3. #3
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 94
    Par défaut
    Citation Envoyé par Linaa
    Oui, mais...
    Quel est le code qui produit cette erreur ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    <!--	Affichage du header html	-->
     <?php
     
    	print ("<HTML><HEAD><TITLE>CYBERPLUS - Paiement Securise sur Internet</TITLE></HEAD>");
    	print ("<BODY bgcolor=#ffffff>");
    	print ("<Font color=#000000>");
    	print ("<center><H1>Test de l'API plug-in CYBERPLUS</H1></center><br><br>");
     
     
    	//		Affectation des paramètres obligatoires
     
    	$parm="merchant_id=038862749811111";
    	$parm="$parm merchant_country=fr";
    	$parm="$parm amount=100";
    	$parm="$parm currency_code=978";
     
     
    	// Initialisation du chemin du fichier pathfile (à modifier)
    	    //   ex :
    	    //    -> Windows : $parm="$parm pathfile=c:\\repertoire\\pathfile";
    	    //    -> Unix    : $parm="$parm pathfile=/home/repertoire/pathfile";
     
    	$parm="$parm pathfile=C:\\cyberplus\\payment\\param\\pathfile";
     
    	//		Si aucun transaction_id n'est affecté, request en génère
    	//		un automatiquement à partir de heure/minutes/secondes
    	//		Référez vous au Guide du Programmeur pour
    	//		les réserves émises sur cette fonctionnalité
    	//
    	//		$parm="$parm transaction_id=123456";
     
     
     
    	//		Affectation dynamique des autres paramètres
    	// 		Les valeurs proposées ne sont que des exemples
    	// 		Les champs et leur utilisation sont expliqués dans le Dictionnaire des données
    	//
    	// 		$parm="$parm normal_return_url=http://www.maboutique.fr/cgi-bin/call_response.php";
    	//		$parm="$parm cancel_return_url=http://www.maboutique.fr/cgi-bin/call_response.php";
    	//		$parm="$parm automatic_response_url=http://www.maboutique.fr/cgi-bin/call_autoresponse.php";
    	//		$parm="$parm language=fr";
    	//		$parm="$parm payment_means=CB,2,VISA,2,MASTERCARD,2";
    	//		$parm="$parm header_flag=no";
    	//		$parm="$parm capture_day=";
    	//		$parm="$parm capture_mode=";
    	//		$parm="$parm bgcolor=";
    	//		$parm="$parm block_align=";
    	//		$parm="$parm block_order=";
    	//		$parm="$parm textcolor=";
    	//		$parm="$parm receipt_complement=";
    	//		$parm="$parm caddie=mon_caddie";
    	//		$parm="$parm customer_id=";
    	//		$parm="$parm customer_email=";
    	//		$parm="$parm customer_ip_address=";
    	//		$parm="$parm data=";
    	//		$parm="$parm return_context=";
    	//		$parm="$parm target=";
    	//		$parm="$parm order_id=";
     
     
    	//		Les valeurs suivantes ne sont utilisables qu'en pré-production
    	//		Elles nécessitent l'installation de vos fichiers sur le serveur de paiement
    	//
    	// 		$parm="$parm normal_return_logo=";
    	// 		$parm="$parm cancel_return_logo=";
    	// 		$parm="$parm submit_logo=";
    	// 		$parm="$parm logo_id=";
    	// 		$parm="$parm logo_id2=";
    	// 		$parm="$parm advert=";
    	// 		$parm="$parm background_id=";
    	// 		$parm="$parm templatefile=";
     
     
    	//		insertion de la commande en base de données (optionnel)
    	//		A développer en fonction de votre système d'information
     
    	// Initialisation du chemin de l'executable request (à modifier)
    	// ex :
    	// -> Windows : $path_bin = "c:\\repertoire\\bin\\request";
    	// -> Unix    : $path_bin = "/home/repertoire/bin/request";
    	//
     
    	$path_bin = "C:\\cyberplus\\payment\\bin\\request";
     
     
    	//	Appel du binaire request
     
    	$result=exec("$path_bin $parm");
     
    	//	sortie de la fonction : $result=!code!error!buffer!
    	//	    - code=0	: la fonction génère une page html contenue dans la variable buffer
    	//	    - code=-1 	: La fonction retourne un message d'erreur dans la variable error
     
    	//On separe les differents champs et on les met dans une variable tableau
     
    	$tableau = explode ("!", "$result");
     
    	//	récupération des paramètres
     
    	$code = $tableau[1];
    	$error = $tableau[2];
    	$message = $tableau[3];
     
    	//  analyse du code retour
     
      if (( $code == "" ) && ( $error == "" ) )
     	{
      	print ("<BR><CENTER>erreur appel request</CENTER><BR>");
      	print ("executable request non trouve $path_bin");
     	}
     
    	//	Erreur, affiche le message d'erreur
     
    	else if ($code != 0){
    		print ("<center><b><h2>Erreur appel API de paiement.</h2></center></b>");
    		print ("<br><br><br>");
    		print (" message erreur : $error <br>");
    	}
     
    	//	OK, affiche le formulaire HTML
    	else {
    		print ("<br><br>");
     
    		# OK, affichage du mode DEBUG si activé
    		print (" $error <br>");
     
    		print ("  $message <br>");
    	}
     
    print ("</BODY></HTML>");
     
    ?>

  4. #4
    Membre éclairé Avatar de pimpmyride
    Inscrit en
    Décembre 2005
    Messages
    321
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 321
    Par défaut
    essaye avec apache ca vient probablement de windows server

  5. #5
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 94
    Par défaut
    Citation Envoyé par pimpmyride
    essaye avec apache ca vient probablement de windows server
    Je te remercie, mais tout le problème vient de là, nous n'avons pas le choix que de passer par IIS.

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2006
    Messages
    94
    Détails du profil
    Informations forums :
    Inscription : Juillet 2006
    Messages : 94
    Par défaut Résolu
    Il a fallu recréer le site Web dans IIS, créer un répertoire virtuel qui se nomme cgi-bin, et autoriser l'exécution de script CGI et maintenant cela fonctionne.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Système] problème d'exécution code php
    Par QuenTinO dans le forum Langage
    Réponses: 1
    Dernier message: 24/04/2007, 11h50
  2. Executer un exe en php (Unable to fork)
    Par Alain15 dans le forum IIS
    Réponses: 13
    Dernier message: 03/08/2006, 13h15
  3. [Système] Problème de droits et exécution
    Par bib1 dans le forum Langage
    Réponses: 2
    Dernier message: 29/05/2006, 11h31
  4. [Système] Problème d'exécution DOS sous PHP
    Par chtichokoko dans le forum Langage
    Réponses: 7
    Dernier message: 28/04/2006, 16h26

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo