Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > HTML / DHTML / XHTML
HTML / DHTML / XHTML Forum sur la programmation HTML / DHTML/ XHTML et la validation W3C. Cours (X)HTML, FAQ (X)HTML
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 22/02/2011, 09h14   #1
Membre régulier
 
Avatar de ypcman
 
Homme Yves
Responsable en conduite du changement
Inscription : janvier 2011
Messages : 63
Détails du profil
Informations personnelles :
Nom : Homme Yves
Localisation : France

Informations professionnelles :
Activité : Responsable en conduite du changement
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : janvier 2011
Messages : 63
Points : 73
Points : 73
Par défaut méthode GET : argument contenant des arguments

Bonjour.
je voudrai pouvoir faire ceci :
Code :
<a href='foo_1.php?val_11=11&val_12=foo_2.php?val_21=21&val_22=22'>
avec val_21 et val_22, arguments de foo_2

j'ai résolu ce pb en remplaçant un & par '%26' :
Code :
<a href='foo_1.php?val_11=11&val_12=foo_2.php?val_21=21%26val_22=22'>
Mais, si on a besoin d'un niveau de plus, ça ne fonctionne plus.
Existe t'il un marquage type parenthèse de ce genre ou une autre solution ?
Code :
<a href='foo_1.php?val_11=11&val_12={foo_2.php?val_21=21&val_22={....}}'>
Merci de votre aide.
ypcman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 16h34   #2
Membre régulier
 
Avatar de ypcman
 
Homme Yves
Responsable en conduite du changement
Inscription : janvier 2011
Messages : 63
Détails du profil
Informations personnelles :
Nom : Homme Yves
Localisation : France

Informations professionnelles :
Activité : Responsable en conduite du changement
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : janvier 2011
Messages : 63
Points : 73
Points : 73
Ma question est peut-être mal expliquée.
Elle se résume en fait à faire comprendre au script receveur qu'un & peut soit indiquer un nouvel argument soit le sous-argument suivant de l'argument précédent.
en image avec des ( ) pour me faire comprendre.

<a href='foo_1.php?val_11=11&val_12=foo_2.php?val_21=21&val_13=13&val_14=14'>

ça veut dire :
<a href='foo_1.php?val_11=11&val_12=(foo_2.php?val_21=21)&val_13=13&val_14=14'>
et je voudrai que ça puisse vouloir dire :
<a href='foo_1.php?val_11=11&val_12=(foo_2.php?val_21=21&val_13=13)&val_14=14'>

Je ne suis pas sur d'être beaucoup plus clair ...
ypcman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 17h41   #3
Expert Confirmé Sénior
 
Inscription : septembre 2004
Messages : 5 053
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 5 053
Points : 6 967
Points : 6 967
Dans une URL, & n'est pas autorisé à être autre chose qu'un séparateur d'arguments. (Et la notion de sous-arguments n'existe pas.)

Remplacer par %26 dans les autres cas.
thelvin est actuellement connecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 19h00   #4
Modérateur
 
Avatar de NoSmoking
 
Homme
Inscription : janvier 2011
Messages : 2 930
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Isère (Rhône Alpes)

Informations forums :
Inscription : janvier 2011
Messages : 2 930
Points : 4 744
Points : 4 744
si tu envoies
Code :
val_11=11&val_12=(foo_2.php?val_21=21)&val_13=13&val_14=14
tu recevras
Code :
1
2
3
4
5
6
7
Array
(
  [val_11] => 11
  [val_12] => (foo_2.php?val_21=21)
  [val_13] => 13
  [val_14] => 14
)
si tu envoies
Code :
val_11=11&val_12=(foo_2.php?val_21=21&val_13=13)&val_14=14
tu recevras
Code :
1
2
3
4
5
6
7
Array
(
  [val_11] => 11
  [val_12] => (foo_2.php?val_21=21
  [val_13] => 13)
  [val_14] => 14
)
on voit donc bien que le & entre les 2 () est interprété comme délimiteur

Si tu veux tu peux toujours le remplacer à l'envoie et le remettre à la reception, quoi qu'il arrives il y aura de la manipulation à faire car comme la écrit
Citation:
Envoyé par thelvin
Dans une URL, & n'est pas autorisé à être autre chose qu'un séparateur d'arguments. (Et la notion de sous-arguments n'existe pas.)
NoSmoking est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 22/02/2011, 21h06   #5
Membre régulier
 
Avatar de ypcman
 
Homme Yves
Responsable en conduite du changement
Inscription : janvier 2011
Messages : 63
Détails du profil
Informations personnelles :
Nom : Homme Yves
Localisation : France

Informations professionnelles :
Activité : Responsable en conduite du changement
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : janvier 2011
Messages : 63
Points : 73
Points : 73
Citation:
la notion de sous-arguments n'existe pas.
Merci pour vos explications.
rawurlencode() m'a permis de résoudre en partie mon pb.
ypcman est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/02/2011, 08h08   #6
Modérateur
 
Avatar de Bisûnûrs
 
Josselin
Développeur Web
Inscription : janvier 2004
Messages : 9 050
Détails du profil
Informations personnelles :
Nom : Josselin
Âge : 29
Localisation : France, Rhône (Rhône Alpes)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : janvier 2004
Messages : 9 050
Points : 12 181
Points : 12 181
Après tu peux toujours utiliser des crochets dans les paramètres pour récupérer des tableaux PHP.

Genre :

Code :
?foo[val1]=truc&foo[val2]=muche&foo2[val1]=truc2&foo2[val2]=muche2
Bisûnûrs 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 11h09.


 
 
 
 
Partenaires

Hébergement Web