[PHP] Inclure un fichier cgi apres execution de celui-ci

Inclure un fichier cgi apres execution de celui-ci [PHP] - PHP - Programmation

Marsh Posté le 18-01-2004 à 01:33:44    

:hello:  :hello:  
 
Comment faire pour faire en sorte ( [:figti] c pas mal tourné ça) que je puisse include() un fichier .cgi mais seulement apres que celui ci est retourné les valeurs (apres execution quoi  [:mir45] ) parce que include('my_cgi_file.cgi') evidemment, il me retourne le code :/
 
Thx :)


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 01:33:44   

Reply

Marsh Posté le 18-01-2004 à 12:05:25    

:bounce:


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 12:07:44    

il fait quoi, ton CGI?

Reply

Marsh Posté le 18-01-2004 à 14:20:32    

o un truc tout con de mon hebergeur, il me calcul l'espace restant...


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 14:39:11    

et pourquoi tu ne pourrais pas simplement utiliser la fonction exec et récupérer le résultat?

Reply

Marsh Posté le 18-01-2004 à 15:21:50    

Bonne question, peut etre parce que je l'a connait pas :) etant debutant ;)
 
je vais regarder cette fonction dan sla doc, thx ;)
 
Edit : C'est quoi c'truc de ouf  [:miracle]  [:miracle]


Message édité par KdZ' le 18-01-2004 à 15:23:35

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 15:29:42    

euhhh .... et disk_free_space() ????  [:meganne]
http://www.nexen.net/docs/php/anno [...] -space.php


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 18-01-2004 à 15:36:15    

Ah oui pourquoi pas, mais le principe etait surtout de comprendre comment on aurait pu faire ça avec le fichier cgi...
 
Je vois pas dutout comment faire, il faudrait que le fichier cgi soit executer, ensuite la source retournée serait include dans ma page .php   [:wawash]
 
 
A oué c pas mal :  
 

Code :
  1. $df = disk_free_space("k:" );
  2. $dt = disk_total_space("k:" );
  3. $du = ($dt-$df);
  4. print("Disque dur K:<br /><br />Espace total : " . round($dt/1000000000, 2) . "Go<br />Espace libre : " . round($df/1000000000, 2) . "Go<br />Espace utilisé : " . round($du/1000000000, 2) . "Go" );


 
Mais j'en veut pas :p


Message édité par KdZ' le 18-01-2004 à 16:02:37

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 15:38:37    

ben tu creer un fichier temporaire dans lequel tu stockes les données retournées par ton cgi ..... et tu lis et affiche ce fichier depuis mapage.php


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 18-01-2004 à 15:44:02    

simogeo a écrit :

ben tu creer un fichier temporaire dans lequel tu stockes les données retournées par ton cgi ..... et tu lis et affiche ce fichier depuis mapage.php


 
 [:figti] Yep c'est exactement ça, le probleme, c'est comment le faire  [:wawash]
 
Edit : C'est comme ça que tu ferais ?


Message édité par KdZ' le 18-01-2004 à 15:44:52

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 15:44:02   

Reply

Marsh Posté le 18-01-2004 à 15:45:04    

KdZ' a écrit :


 
 [:figti] Yep c'est exactement ça, le probleme, c'est comment le faire  [:wawash]  

ton cgi ecris le resultat dans un fichier txt et ta page php recupere les infos du txt.

Reply

Marsh Posté le 18-01-2004 à 15:47:41    

KdZ' a écrit :


Edit : C'est comme ça que tu ferais ?


 
ben je sais pas .. je ne connais pas exactement ton code ni le fonctionnement de ton cgi .....  [:spamafote]  
 
fais comme bon te semble, tu trouveras de bons tutos facilement sur la manip de fichiers  :)


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 18-01-2004 à 15:50:29    

Oki c cool, je vais essayer...
thx ;)


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 18-01-2004 à 22:14:18    

ouarf, une petite astuce/fonction vite fait ? :)
 
Edit : J'arrive a rien :(


Message édité par KdZ' le 18-01-2004 à 23:18:46

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 02:45:30    

:up:


Message édité par KdZ' le 19-01-2004 à 02:45:42

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 11:12:08    

Le plus simple c'est dans ton code PHP, ua lieu de générer un fichier texte, tu gère directement le retour du cgi.
Je m'explique :
 
$retour_cgi = file_get_contents (url_de_ton_cgi);
 
Ensuite tu parses $retour_cgi pour en extraire les infos que tu souhaites et puis tu en fais ce que tu voulais.
 
Tout ça dans un seul script sans passer par un fichier temporaire.

Reply

Marsh Posté le 19-01-2004 à 13:01:57    

Ok je vais essayer ça, autre question, les news de cetains site sont proposés en sortie xml/rss, ça sera pareil la ?


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 13:22:43    

KdZ' a écrit :

Ok je vais essayer ça, autre question, les news de cetains site sont proposés en sortie xml/rss, ça sera pareil la ?


nan, le navigateur affichera directement le fichier xml ( bien que ses données soit générées en php )


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 19-01-2004 à 13:56:09    

Oui mais imagine sur les news je veux pouvoir virer une ligne (exemple : "news du site ..." ) ¿
 
 
Rhoo puis c pas ça mais pk y a pas de tuto sur le net pour la manipulation de xml/rss  :fou: c'est chiant ça


Message édité par KdZ' le 19-01-2004 à 13:59:12

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 14:38:39    

ratibus a écrit :


 
$retour_cgi = file_get_contents (url_de_ton_cgi);


 
En faisant comme çà, il me retourne le code source du cgi [:mir45]


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 15:27:23    

moi je ferais comme ca mais ca me semble un peu goret :
 
system("path/ton_cgi > path/tempo" );
 
et tu devrais trouver le resultat du cgi dans path/tempo

Reply

Marsh Posté le 19-01-2004 à 15:31:27    

tu l'inclut avec un ssi pis basta, pk se prendre la tete...

Reply

Marsh Posté le 19-01-2004 à 17:01:39    

ssi, ah en v'la des nouvelles choses dans ce topic :D
 
Je vais essayer de me renseigner... hum, ssi, il faut un serveur special pour ça nan ?


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 17:34:42    

ben y faut apache koi, avec le module ssi, qui est livré avec.
Tu as plusieur facon , soit tu fait une page shtml qui inclut tes cgi et tes script php, soit tu modifie la config de apache pour qu'il execute le php dans les fichier shtml ,(ou le contraire, que les fichier php soit aussi server side parsed, (si on peut))


Message édité par Nico5779 le 19-01-2004 à 17:35:21
Reply

Marsh Posté le 19-01-2004 à 17:41:24    

Ca, ça dependrea d'ovh... as tu un petit tuto sur ce que je veux faire ?


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 19-01-2004 à 17:46:59    

ben tu peut matter la: http://trustonme.net/didactels/?rub=230
l'exemple a la fin du point 2 te montre comment tu peux executer une cgi dans une page html

Reply

Marsh Posté le 19-01-2004 à 18:50:35    

KdZ' a écrit :


 
En faisant comme çà, il me retourne le code source du cgi [:mir45]


Non il inclut le résultat renvoyé par le script (tu accède au fichier par http et pas au niveau du système de fichier, donc tu n'as ue l'interprétation que le serveur à fait du cgi)

Reply

Marsh Posté le 20-01-2004 à 12:31:18    

ratibus a écrit :


Non il inclut le résultat renvoyé par le script (tu accède au fichier par http et pas au niveau du système de fichier, donc tu n'as ue l'interprétation que le serveur à fait du cgi)


 
 
Bordel :o
 

Code :
  1. $retour_cgi = file_get_contents ("quota.cgi" );
  2. print("$retour_cgi" );


me retourne le code :o
 
 [:mir45]  :D


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 20-01-2004 à 12:37:25    

KdZ' a écrit :


 

Code :
  1. $retour_cgi = file_get_contents ("quota.cgi" );
  2. print("$retour_cgi" );


me retourne le code :o
 
 [:mir45]  :D  


 
oui ben on s'en doute [:kiki] .........
 
en fait il faut que tu excéutes ton cgi ..... que tu récuperes le résultat et que tu le mettes dans un fichier ... c'est ce fichier qu'il faudra lire avec file_get_contents();


---------------
from here and there -- \o__________________________________ -- la révolution de la terre, en silence
Reply

Marsh Posté le 20-01-2004 à 13:40:39    

oki :)
 
Bon je ne pourrait pas avec les cgi, ovh 60gp ne le permet pas :(
 
Il me reste plus que file_get_contents(); :/ :/


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 20-01-2004 à 19:34:11    

KdZ' a écrit :


 
 
Bordel :o
 

Code :
  1. $retour_cgi = file_get_contents ("quota.cgi" );
  2. print("$retour_cgi" );


me retourne le code :o
 
 [:mir45]  :D  


On n'a pas du se comprendre :D
Faut que t'installes ton CGI dans un répertoire d'Apache où il sera interprété
Puis tu fais un  file_get_contents(url_de_ton_cgi)
Où url_de_ton_cgi, c'est pas "quota.cgi" mais "http://tonsite/quota.cgi"
Dans ce cas là PHP récupérera le retour du CGI (comme si tu y allais avec ton navigateur sur le CGI)
 
C'est plus clair ?

Reply

Marsh Posté le 20-01-2004 à 21:54:21    

Effectivement ;)
 
Donc là c logique ça fonctionne, c'est un peu de la bidouille ça, et mon but est d'apprendre, mais bon c'est pas grave, merci ;)
 
Par contre, imagine que ce 'quota.cgi' soit placé dans un rep protégé par htaccess, là php nous retourne un truc du style :  
 
Warning: file_get_contents(http://www.mon_site.com/admin/quota.cgi): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in ...
 
Comment ça ce passe ?
 
ps : Inutile de me dire de mettre mon cgi dans un rep non protégé, cette fois ça ne sera pas si facile de s'en sortir :D :D :D


Message édité par KdZ' le 20-01-2004 à 22:03:32

---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 20-01-2004 à 22:40:25    

KdZ' a écrit :

Effectivement ;)
 
Donc là c logique ça fonctionne, c'est un peu de la bidouille ça, et mon but est d'apprendre, mais bon c'est pas grave, merci ;)
 
Par contre, imagine que ce 'quota.cgi' soit placé dans un rep protégé par htaccess, là php nous retourne un truc du style :  
 
Warning: file_get_contents(http://www.mon_site.com/admin/quota.cgi): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in ...
 
Comment ça ce passe ?
 
ps : Inutile de me dire de mettre mon cgi dans un rep non protégé, cette fois ça ne sera pas si facile de s'en sortir :D :D :D

Autorise l'ip du seveur !?

Reply

Marsh Posté le 20-01-2004 à 23:45:53    

rhoo alors là je penssait pas que tu m'aurais donner cette reponse, c de la grosse bidouille là.
 
Eu, en php alors, tu ferais comment ?
 
il n'existe pas une fonction style httpconnect (comme pour ftp quoi :D )


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 21-01-2004 à 11:54:31    

KdZ' a écrit :

Effectivement ;)
 
Donc là c logique ça fonctionne, c'est un peu de la bidouille ça, et mon but est d'apprendre, mais bon c'est pas grave, merci ;)
 
Par contre, imagine que ce 'quota.cgi' soit placé dans un rep protégé par htaccess, là php nous retourne un truc du style :  
 
Warning: file_get_contents(http://www.mon_site.com/admin/quota.cgi): failed to open stream: HTTP request failed! HTTP/1.1 401 Authorization Required in ...
 
Comment ça ce passe ?
 
ps : Inutile de me dire de mettre mon cgi dans un rep non protégé, cette fois ça ne sera pas si facile de s'en sortir :D :D :D


Le répertoire est complètement vérouillé (deny from all) ou bien y a un utilisateur qui a le droit d'y accéder ?
 
Si un utilisateur a le droit d'y accéder tu fais :

Code :
  1. file_get_contents("http://login:password@www.mon_site.com/admin/quota.cgi" )


Message édité par ratibus le 21-01-2004 à 11:55:21
Reply

Marsh Posté le 21-01-2004 à 19:49:50    

require valid-user  
 
J'ai donc essayer ta methode : file_get_contents('http://admin:rootpim@www.pim.asso.fr/admin/_quota.cgi');
 
Mais rien ne s'affiche :/


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 21-01-2004 à 20:56:09    

et à partir de ton navigateur ça marche ?

Reply

Marsh Posté le 21-01-2004 à 22:04:41    

Yep  [:mir45]


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le 22-01-2004 à 08:49:15    

t'as du te gourer dans le mot de passe, non ?
car quand j'essaie cette url dans mon navigateur : http://admin:rootpim@www.pim.asso.fr/admin/_quota.cgi, il me remplit bien le champ du login en me disant que le pass et incorrect (normal, je pense, tu n'as pas du mettre le mot de passe réel :D)
 
Mais cette technique marche (login:pass@site)

Reply

Marsh Posté le 22-01-2004 à 11:49:09    

Lol il m'a pris pour un ouf :p
C donc toi 195.25.232.***
 
Arf, pourtant je t'assure ne pas m'etre gourer dans la pass...
 
Si tu avais du faire comme moi tu aurais fait comment ?


---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux
Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed