Récupération dans du code php du nom du fichier contenant le code ?

Récupération dans du code php du nom du fichier contenant le code ? - PHP - Programmation

Marsh Posté le 20-06-2003 à 10:08:07    

Je voudrais savoir s'il existe une fonction qui puisse donner dans une ligne php le nom du fichier contenant ce code ?
 
Exemple : j'ai un fichier qui s'appelle "toto.php"
Je voudrais savoir s'il est possible dans le code de ce fichier "toto.php" d'utiliser une fonction qui me dise que le nom du fichier est "toto.php" ?
 
C'est pour fignoler le codage d'une redirection...
 
header('Location: ' . append_sid("login.php?redirect=toto.php", true));  
 
Merci d'avance :D


Message édité par -ET- le 20-06-2003 à 10:39:51
Reply

Marsh Posté le 20-06-2003 à 10:08:07   

Reply

Marsh Posté le 20-06-2003 à 10:17:41    

je crois que $PHP_SELF fait ce que tu veux.
Sinon, si tu fais un phpinfo, le nom de cette constante est donnée.

Reply

Marsh Posté le 20-06-2003 à 10:39:16    

dropsy a écrit :

je crois que $PHP_SELF fait ce que tu veux.
Sinon, si tu fais un phpinfo, le nom de cette constante est donnée.


Merci de ta réponse  :jap:  
 
En fait c'est presque ça, mais cette variable donne le chemin+le nom du fichier alors qu'il ne me faut que le nom du fichier.
 
Or quand je fais des essais ça plante à cause de ça :(
header('Location: ' . append_sid("login.php?redirect=".$PHP_SELF, true));  
 
Une idée pour n'avoir que le nom du fichier ?


Message édité par -ET- le 20-06-2003 à 10:48:40
Reply

Marsh Posté le 20-06-2003 à 10:58:00    

C'est bon je viens de trouver.
 
Le solution était basename($PHP_SELF) ce qui nous donne pour mon script...  
 
header('Location: ' . append_sid("login.php?redirect=".basename($PHP_SELF), true));  
 
Voilà, ça marche.
Merci beaucoup de m'avoir aidé :jap:  

Reply

Marsh Posté le 20-06-2003 à 10:59:16    

en fait, il vaut mieux utiliser $_SERVER['PHP_SELF']
 
sinon, pour récupérer que le nom, tu peux essayer $_SERVER["SCRIPT_NAME"], mais je suis pas sur du résultat.
sinon, dans la doc sur les fonctions liées au système de fichier, il doit y avoir une fonction qui isole le nom du script [:meganne]

Reply

Marsh Posté le 20-06-2003 à 12:32:02    

dropsy a écrit :


...
sinon, dans la doc sur les fonctions liées au système de fichier, il doit y avoir une fonction qui isole le nom du script [:meganne]  


 
c'est basename() et il l'a écrit plus haut  :)


---------------
La musique c'est comme la bouffe, tu te souviens du restaurant dans lequel t'as bien mangé 20 ans plus tôt, mais pas du sandwich d'il y a 5 minutes :o - Plugin pour winamp ©Harkonnen : http://harko.free.fr/soft
Reply

Marsh Posté le 20-06-2003 à 13:29:44    

Sh@rdar a écrit :


 
c'est basename() et il l'a écrit plus haut  :)  


 
le temps d'écrire ma réponse il avait trouver la soluce :)

Reply

Marsh Posté le 20-06-2003 à 19:26:33    

dropsy a écrit :

en fait, il vaut mieux utiliser $_SERVER['PHP_SELF']


OK merci, ça marche aussi ;)  
 
J'avais encore une question de newbie : comment on fait un OU dans le test d'un if ?  :sarcastic:  
Exemple : if( $userdata['user_lang'] == french OU? une_autre_langue )
 
Merci d'avance :)


Message édité par -ET- le 20-06-2003 à 19:26:57
Reply

Marsh Posté le 20-06-2003 à 21:42:07    

-ET- a écrit :


OK merci, ça marche aussi ;)  
 
J'avais encore une question de newbie : comment on fait un OU dans le test d'un if ?  :sarcastic:  
Exemple : if( $userdata['user_lang'] == french OU? une_autre_langue )
 
Merci d'avance :)


 

Code :
  1. if( $userdata['user_lang'] == french || $userdata['user_lang'] == english) {...)


Message édité par dropsy le 20-06-2003 à 21:42:56
Reply

Marsh Posté le 20-06-2003 à 23:14:45    

dropsy a écrit :


Code :
  1. if( $userdata['user_lang'] == french || $userdata['user_lang'] == english) {...)




Merci beaucoup, c'est nickel c'est ça :jap:  :)

Reply

Marsh Posté le 20-06-2003 à 23:14:45   

Reply

Marsh Posté le 20-06-2003 à 23:28:57    

-ET- a écrit :


Merci beaucoup, c'est nickel c'est ça :jap:  :)  


 
de rien :)

Reply

Sujets relatifs:

Leave a Replay

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