Précédent   Forum des professionnels en informatique > PHP > Scripts
Scripts Forum d'entraide sur les scripts PHP téléchargés. Les meilleurs scripts PHP, la FAQ scripts PHP, toutes les FAQ PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 31/05/2011, 16h58   #1
Invité de passage
 
Inscription : mars 2010
Messages : 12
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 12
Points : 1
Points : 1
Par défaut Parser une url ?

Bonjour à toutes et à tous :

Voilà, j'ai une petite question :
Grâce à la variable $_SERVER['REQUEST_URI'] je peux récupérer le chemin de mon fichier sur mon serveur.
J'obtiens ainsi une chaine de carctères de ce type : "/menu/index.php/linstitut/plan-dacces"

Mon objectif serait de pouvoir récupérer dans une variable, l'intituler qui se place juste après index.php/. Soit dans cette exemple récupérer "linstitut".

Il y a de grande chance que mon url s'agrandisse par la suite devenant "/menu/index.php/linstitut/plan-dacces/mon-new-chemin", et c'est sur linstitut que je souhaite effectuer un test.

Malheureusement la fonction parse_url() ne fonctionne pas sur ce type d'url...
Je me demande si il serait judicieux de créer un REGEX qui récupérer la chaine de caractère comprise entre les deux / qui suivent index.php ?
Si il existe une autre méthode, je suis preneur, les REGEX ne sont pas mon fort, car la je patine beaucoup et j'aimerais pouvoir avancer.

Merci d'avance
Eznable est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 17h09   #2
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
$_SERVER['PATH_INFO']
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 31/05/2011, 17h11   #3
Membre régulier
 
Avatar de Netek
 
Homme Damien Gros
Développeur Web
Inscription : mars 2011
Messages : 58
Détails du profil
Informations personnelles :
Nom : Homme Damien Gros
Âge : 25
Localisation : France, Gard (Languedoc Roussillon)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : mars 2011
Messages : 58
Points : 73
Points : 73
Envoyer un message via MSN à Netek
ca fait peut etre usine a gaz mais :
Code :
1
2
3
4
$tab = explode('/index.php/',$_SERVER['REQUEST_URI']);
// Tu as donc $tab[0] = "/menu" et $tab[1] = "linstitut/plan-dacces/mon-new-chemin"
$tab = explode('/',$tab[1]);
// $tab[0] = "linstitut"
Vive le bidouillage
Netek est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 31/05/2011, 17h31   #4
Invité de passage
 
Inscription : mars 2010
Messages : 12
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 12
Points : 1
Points : 1
Citation:
Envoyé par stealth35 Voir le message
$_SERVER['PATH_INFO']
Bien vu bien vu !

J'utilisais un petit script choper sur la doc php :
Code :
1
2
3
4
5
echo '<table border="1">';
	foreach ($_SERVER as $k => $v){
		echo "<tr><td>" . $k ."</td><td>" . $v . "</td></tr>";
	}
	echo "</table>";
En local il ne m'affichait pas cette variable, mais sur le serveur il l'affiche.
Du coups, grâce à ca, j'ai le chemin suivant :
PATH_INFO : /linstitut/nos-partenaires

Ca va être plus simple à traiter ainsi ! Merci en tout cas de la rapidité de vos réponses, ca m'a grandement aidé !
Eznable est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 17h38   #5
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
t'as quel serveur en local ?
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 17h43   #6
Invité de passage
 
Inscription : mars 2010
Messages : 12
Détails du profil
Informations forums :
Inscription : mars 2010
Messages : 12
Points : 1
Points : 1
J'ai installé xampp, donc j'ai un serveur apache.

Apache Version : Apache/2.2.11 (Win32) DAV/2 mod_ssl/2.2.11 OpenSSL/0.9.8i mod_autoindex_color PHP/5.2.8

Pourquoi ? Ce n'est pas normal le non affichage de la variable PATH_INFO ?
Eznable est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/05/2011, 17h46   #7
Modérateur
 
Inscription : septembre 2010
Messages : 7 103
Détails du profil
Informations forums :
Inscription : septembre 2010
Messages : 7 103
Points : 8 466
Points : 8 466
si t'es en module apache je trouve ça bizarre que ça ne s'affiche pas, normalement t'as PATH_INFO et PATH_TRANSLATED quand tu fais un adresse du type :
http://exemple.com/index.php/test
__________________
http://blog.stealth35.com/
stealth35 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 17h47.


 
 
 
 
Partenaires

Hébergement Web