Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
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 20/12/2007, 18h19   #1
Membre expérimenté
 
Avatar de strat0
 
Homme François Guillot
Développeur Web
Inscription : novembre 2003
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme François Guillot
Âge : 30
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 286
Points : 542
Points : 542
Par défaut Paramètre POST qui contient des espaces les perd dans Request

Bonjour,

Voilà c'est tout bête. J'ai une page ASP.net qui envoie une requête à ma page ASP 3.0. Cette requête contient des paramètres POST, dont un assez long (il s'agit d'un nom XML complet) qui contient des espaces.

Cette commande :
Me renvoie ceci :
Code :
Methode=Ajouter&Id=CarteReunion&Noeud=<MARQUEUR latitude="-21.102438" longitude="55.561981" id="735560" titre="TEEEEEEEEST!!!" type="punaiseVert" prospect="false"><ONGLETS /></MARQUEUR>
Mais celle-ci :
Me renvoie...
Code :
<MARQUEURlatitude="-21.102438"longitude="55.561981"id="475482"titre="TESTTESTTEST"type="punaiseVert"prospect="false"><ONGLETS/></MARQUEUR>
Et là je dois bien l'avouer, je sèche.
strat0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2007, 19h31   #2
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Salut,

pourrais tu être plus explicite pcq la j'ai un peu de mal à te comprendre
C'est la création d'espace qui te pose problème ou non ??
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2007, 20h00   #3
Membre expérimenté
 
Avatar de strat0
 
Homme François Guillot
Développeur Web
Inscription : novembre 2003
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme François Guillot
Âge : 30
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 286
Points : 542
Points : 542
Pardon, je vais essayer d'être plus clair.

Ma page ASP doit récupérer un paramètre POST qui s'appelle "Noeud". Ce paramètre est en fait un noeud XML écrit sous forme d'un bête string, et celui-ci contient des espaces.

Lorsque je fais afficher à ma page ASP l'ensemble de la chaîne de paramètres POST, les espaces sont bien présents. Mais lorsque je récupère directement la valeur du paramètre "Noeud", tous les espaces ont disparu.

Et c'est un peu embêtant parce que ça rend ce noeud inutilisable...
strat0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 20/12/2007, 21h37   #4
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Sa te donne quoi
Code asp :
request.form("Noeud")
qui est préférable d'utiliser comme ceci pour la méthode post plutôt que ne pas préciser la method pour les request
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 11h07   #5
Membre expérimenté
 
Avatar de strat0
 
Homme François Guillot
Développeur Web
Inscription : novembre 2003
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme François Guillot
Âge : 30
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 286
Points : 542
Points : 542
Citation:
Envoyé par kaiser59 Voir le message
Sa te donne quoi
Code asp :
request.form("Noeud")
qui est préférable d'utiliser comme ceci pour la méthode post plutôt que ne pas préciser la method pour les request
Même chose que sans .form, les espaces dans ma chaîne disparaissent toujours mystérieusement.

En dernier recours j'essaie de faire un substring Right à partir de la position dans la chaîne de "&Noeud=" mais... InStr me retourne systématiquement 0 quand je lui demande de chercher cette occurence...
Code :
Right(Request.Form, Len(Request.Form) - (InStr("&Noeud=", Request.Form) + 7))
J'en perds mon latin...

Pour rappel la chaîne de paramètres est :
Citation:
Methode=Ajouter&Id=CarteGuadeloupe&Noeud=<MARQUEUR latitude="16.217312" longitude="-61.44104" id="395103" titre="TEEEEEEEEST!!!" type="punaiseVert" prospect="false"><ONGLETS /></MARQUEUR>
Et il n'y a que Request.Form qui me renvoie la chaîne dans cet état.
strat0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 11h24   #6
Membre expérimenté
 
Avatar de strat0
 
Homme François Guillot
Développeur Web
Inscription : novembre 2003
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme François Guillot
Âge : 30
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 286
Points : 542
Points : 542
OK. Ça marche beaucoup mieux en faisant :
Code :
InStr(Request.Form, "&Noeud=")
Plutôt que :
Code :
InStr("&Noeud=", Request.Form)


Mais par contre ça ne m'explique toujours pas la perte des espaces blancs en voulant récupérer directement le paramètre "Noeud"... Tant pis.
strat0 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 12h44   #7
Modérateur
 
Avatar de kaiser59
 
Inscription : novembre 2005
Messages : 1 246
Détails du profil
Informations personnelles :
Âge : 32

Informations forums :
Inscription : novembre 2005
Messages : 1 246
Points : 1 203
Points : 1 203
Envoyer un message via MSN à kaiser59
Citation:
Envoyé par strat0 Voir le message
OK. Ça marche beaucoup mieux en faisant :
Code :
InStr(Request.Form, "&Noeud=")
Plutôt que :
Code :
InStr("&Noeud=", Request.Form)


Mais par contre ça ne m'explique toujours pas la perte des espaces blancs en voulant récupérer directement le paramètre "Noeud"... Tant pis.
C'est normal vue que Instr c'est :
Code asp :
Instr(chaine,"valeur recherche dans chaine")

Par contre excuse mais même si tu n'as trouvé qu'en faisant un instr pourquoi n'as tu pas pls request.form pour remplir ton lien ou je ne sais plus trop quoi cela te donnerais :

Code asp :
response.write "Methode=Ajouter&Id=CarteReunion&amp;Noeud=<MARQUEUR latitude="""& request.form("latitude") &""" longitude="""& request.form("longitude") &""" id="""& request.form("id") &""" ...."

N'est-ce pas possible de faire cela ??
__________________
Ne dites pas Java pour dire Javascript ! Ces deux codes n'ont rien à voir ! // Essayez d'expliquer, de la façon la plus claire possible votre problème. // Parfois une image vaut mieux qu'un long discours

FAQ ASP
kaiser59 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 21/12/2007, 12h56   #8
Membre expérimenté
 
Avatar de strat0
 
Homme François Guillot
Développeur Web
Inscription : novembre 2003
Messages : 286
Détails du profil
Informations personnelles :
Nom : Homme François Guillot
Âge : 30
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur Web

Informations forums :
Inscription : novembre 2003
Messages : 286
Points : 542
Points : 542
Citation:
Envoyé par kaiser59 Voir le message
N'est-ce pas possible de faire cela ??
Non, j'ai de l'ASP.net de l'autre côté. Il n'y aucun formulaire. Il envoie directement le contenu d'un objet XmlElement.
strat0 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 08h05.


 
 
 
 
Partenaires

Hébergement Web