[PHP] Détecter le nom d une page 2, le retour

Détecter le nom d une page 2, le retour [PHP] - PHP - Programmation

Marsh Posté le 15-10-2002 à 00:34:38    

Salut,
 
bon le truc pour détecter le nom d une page marche :
 

Code :
  1. ethernal a dit :
  2. le plus facile est d'utiliser $PHP_SELF (ou $_SERVER["PHP_SELF"] en fonction des options de config du serveur)
  3. il te renverra le nom de la page avec le chemin relatif par rapport au root du site.
  4. ex 
  5. root = http://www.monsite.com/
  6. page actuelle = http://www.monsite.com/test/test.php
  7. chemin relatif= /test/test.php
  8. ensuite il faut extraire le nom de la page: 
  9. $page= substr(
  10.         $PHP_SELF, 
  11.         strrpos($PHP_SELF, '/')+1, 
  12.         strrpos($PHP_SELF,'.')-1
  13.    );
  14. normalement ça devrait être ok
  15. voir http://www.php.net/manual/en/reserved.variables.php
  16. peuvent t'aider aussi :
  17. 'SCRIPT_NAME', 'SCRIPT_FILENAME'
  18. http://www.php.net/manual/en/langu [...] efined.php


 
mais je voudrais aller plus loin...
 
 
Exemple : Ma page se nomme super_souris.php
 
je voudrais mettre dans des variables différentes le nom "super" et "souris"...
 
Pouvez vous m'indiquer vers quelle fonction me tourner pour trouver moi meme ma reponse ;) ???


Message édité par thekeke le 15-10-2002 à 00:35:18

---------------
BattleTag : thekeke#2108 ajoutez moi ;)
Reply

Marsh Posté le 15-10-2002 à 00:34:38   

Reply

Marsh Posté le 15-10-2002 à 00:51:04    

Avec un tableau peut-être non ?
 
$tableau = array("site1","site2"etc...);
 

Reply

Marsh Posté le 15-10-2002 à 01:10:26    

LexTuhor a écrit a écrit :

Avec un tableau peut-être non ?
 
$tableau = array("site1","site2"etc...);
 
 




 
euh ?
 
en fait ce qui me gene c est comment dire en php "prends le mot avant le underscore et celui apres" pour les mettre en variable


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
Reply

Marsh Posté le 15-10-2002 à 01:24:03    

substr
(PHP 3, PHP 4 )
 
substr -- Retourne un segment de chaîne
Description
string substr ( string string, int start [, int length])
 
 
substr() retourne le segment de string définit par start et length.  
 
Si start est positif, la chaîne retournée commencera au caractère numéro start, dans la chaîne string. Le premier caractère est numéroté zéro.  
 
Exemple 1. Exemple avec substr()
 

Code :
  1. <?php
  2. $rest = substr("abcdef", 1);    // retourne "bcdef"
  3. $rest = substr("abcdef", 1, 3); // retourne "bcd"
  4. $rest = substr("abcdef", 0, 4); // retourne "abcd"
  5. $rest = substr("abcdef", 0, 8); // retourne "abcdef"
  6. // Accéder aux caractères vis les accolades
  7. $string = 'abcdef';
  8. echo $string{0};                // retourne a
  9. echo $string{3};                // retourne d
  10. ?>


 

Reply

Marsh Posté le 15-10-2002 à 01:30:58    

LexTuhor a écrit a écrit :

substr
(PHP 3, PHP 4 )
 
substr -- Retourne un segment de chaîne
Description
string substr ( string string, int start [, int length])
 
 
substr() retourne le segment de string définit par start et length.  
 
Si start est positif, la chaîne retournée commencera au caractère numéro start, dans la chaîne string. Le premier caractère est numéroté zéro.  
 
Exemple 1. Exemple avec substr()
 

Code :
  1. <?php
  2. $rest = substr("abcdef", 1);    // retourne "bcdef"
  3. $rest = substr("abcdef", 1, 3); // retourne "bcd"
  4. $rest = substr("abcdef", 0, 4); // retourne "abcd"
  5. $rest = substr("abcdef", 0, 8); // retourne "abcdef"
  6. // Accéder aux caractères vis les accolades
  7. $string = 'abcdef';
  8. echo $string{0};                // retourne a
  9. echo $string{3};                // retourne d
  10. ?>


 
 




 
 :jap: par contre les mots n'ont jamais la meme longueur alors il va falloir que je compte le nom de caracteres avant le _ et apres le _, avant de faire le substr
 
 
je vais tenter


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
Reply

Marsh Posté le 15-10-2002 à 11:51:37    

J'ai ça en stock, j'édite le message dans 5 minutes
 
Voilà les lignes pour extraire les chaînes de caractères, avec comme séparateur "_" :
 
$mot1 = substr($mot_complet, 0, strpos($mot_complet, "_" ));
 
pour obtenir le premier mot de la chaîne
 
et
 
$mot2 = substr($mot_complet, strpos($mot_complet, "_" ) + 1, strlen($mot_complet) - strpos($mot_complet, "_" ) - 1);
 
pour obtenir le second mot de la chaîne.


Message édité par Fred999 le 15-10-2002 à 11:56:51
Reply

Marsh Posté le 15-10-2002 à 11:58:27    

pq j'ai un flag pour ce truc moi j'ai jamais participé !!
 
 
JooooooooOOOOOOOOOOOoooooooooooce :fou:


---------------
Just because you feel good does not make you right
Reply

Marsh Posté le 15-10-2002 à 12:46:30    

Fred999 a écrit a écrit :

J'ai ça en stock, j'édite le message dans 5 minutes
 
Voilà les lignes pour extraire les chaînes de caractères, avec comme séparateur "_" :
 
$mot1 = substr($mot_complet, 0, strpos($mot_complet, "_" ));
 
pour obtenir le premier mot de la chaîne
 
et
 
$mot2 = substr($mot_complet, strpos($mot_complet, "_" ) + 1, strlen($mot_complet) - strpos($mot_complet, "_" ) - 1);
 
pour obtenir le second mot de la chaîne.




 
 :jap: merci bcp !!!!!!


---------------
BattleTag : thekeke#2108 ajoutez moi ;)
Reply

Marsh Posté le 15-10-2002 à 13:52:37    

plus simple:
 
$addr = explode("_", $chaine);
 
$addr[0] = super
$addr[1] = souris
 
c'est pas beau cette fonction ?

Reply

Marsh Posté le 15-10-2002 à 14:48:34    

apolon34 a écrit a écrit :

plus simple:
 
$addr = explode("_", $chaine);
 
$addr[0] = super
$addr[1] = souris
 
c'est pas beau cette fonction ?




 
Connaissais pas :bounce:
 
Effectivement, c'est mieux que de réinventer l'eau chaude! :D


Message édité par Fred999 le 15-10-2002 à 14:48:49
Reply

Marsh Posté le 15-10-2002 à 14:48:34   

Reply

Marsh Posté le 15-10-2002 à 15:30:43    

y'a aussi ça (pour eviter d'avoir un tableau):
 

Code :
  1. <?php
  2. $popol = "a_b_c";
  3. list(($var1, $var2, $var2) = split('[_]', $popol);
  4. echo "var1: $var1; var2: $var2; var2: $var2";
  5. ?>


Message édité par Schimz le 15-10-2002 à 15:31:05
Reply

Sujets relatifs:

Leave a Replay

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