IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP Discussion :

ASP + AJAX, comment récuperer les valeurs du xmlhttp.send ?


Sujet :

ASP

  1. #1
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut ASP + AJAX, comment récuperer les valeurs du xmlhttp.send ?
    Bonjour,

    Et oui encore moi, j'ai plein de probléme

    Voici le piti dernier, je ne sais pas comment récupérer les valeurs contenus dans un xmlhttp.send en ASP.
    J'utilise une fonction AJAX qui marche parfaitement mais dans l'ASP je séche.

    Voila un bout de l'AJAX :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    var done = "fonctionsel="+cour.fonctionsel.value+"&telFixe="+cour.telFixe.value+"&ligneDir="+cour.ligneDir.value;
    	done = done+"&telPort="+cour.telPort.value+"&email="+cour.email.value;
    	done = done+"&adresse="+cour.adresse.value+"&ville="+cour.ville.value+"&code="+cour.code.value;
    	done = done+"&teldomi="+cour.teldomi.value+"&titre="+cour.titre.value+"&portperso="+cour.portperso.value;
    	done = done+"&naissance="+cour.naissance.value+"&mail="+cour.mail.value;
    	done = done+alaska;
    	//alert (data);
    ...
    xmlhttp.open('POST',url,true);
    	xmlhttp.onreadystatechange=function() {
        	if (xmlhttp.readyState==4) {
            	if(document.getElementById){
              	document.getElementById(id).innerHTML = xmlhttp.responseText;
            	}
        	}
    	}
    	xmlhttp.setRequestHeader('Content_type','application/x-www-form-urlencoded');
    	var data = done;
    	xmlhttp.send(data);
    Du coté de l'ASP j'ai testé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Response.Write request.querystring("fonctionsel") ' Sans succés
    Puis :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	Session.Contents.Remove("fonctionsel")
    	Session.Contents.Remove("telFixe")
     
    	dim Item
    	For Each Item in Session.Contents
        	Response.Write Item & "=" & Session.Contents(Item) & "<BR>"
    	Next
    ' Sans succés non plus
    A aussi, l'alert de ma variable 'done' affiche corectement la variable 'done' sans erreur

    Derniére précision même si cela aparrait dasn le code l'envoi des données en AJAX se fait en POST

    MERCI

  2. #2
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Salut,

    Je fais pas trop d'AJAX, mais d'un point de vu logique tu utilises:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    xmlhttp.open('POST',url,true);
    Alors tu devrais essayer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Response.Write request.Form("fonctionsel")
    Non?
    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  3. #3
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Salut,

    Jai deja essayé, j'ai même essayé
    D'habitude ca marche avec des request.querystring quand je passe les variables dans l'URL via AJAX mais la avec
    Je vois pas comment faire, y'a un sujet sur le forum mais le gars a posté son probléme, une question lui a été posé, il a marqué résolu sans mettre la solution et j'ai essayé sa méthode et rien

  4. #4
    Expert éminent
    Avatar de Immobilis
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Mars 2004
    Messages
    6 559
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Mars 2004
    Messages : 6 559
    Points : 9 506
    Points
    9 506
    Par défaut
    Il y a peut-être trop de données. Essaye d'en mettre moins pour voir. Il me semble qu'en ASP au de-là de 256 caractères dans l'URL ça ne marche plus. J'ai eu ce soucis et je suis passé par une methode POST au lieu de GET dans mon formulaire. Mais ce n'etait pas de l'AJAX.

    A+
    "Winter is coming" (ma nouvelle page d'accueil)

  5. #5
    Membre confirmé
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Points : 527
    Points
    527
    Par défaut
    Quel est le rapport entre ta variable url et done ?
    Je suppose que url contient l'url que tu veux appeller et done les parametres que tu veux lui passer.

    Dans l'exemple que tu nous donne il manque un morceau.
    Je pense qu'il faut faire un truc comme ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var url = "/mapage.asp";
    var done = "...";
    xmlhttp.open('POST',url + "?" + done ,true);
    ...

  6. #6
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Re

    Je suis quasi sur de dépasser allegrement les 256 octets.
    malbaladejo => Je ne pense donc pas que ta solution est possible, à moins que lors d'un appel AJAX, l'URL utilisé n'est pas limité en caractéres.

    Je crois que xmlhttp.send(data); est justement utilisé pour les longues chaines de caractéres ne pouvant être contenu dans une URL .

    En PHP c'est unb truc du genre $post['... pour récupérer la valeur du xmlhttp.send(data); mais en ASP je ne sais pas du tout.

    Je vais quand même essayer ta version malbaladejo (ce que j'utilise toujours en fait mais pas avec autant de caractére) en gardant la methode POST


    MERCI

  7. #7
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    YOuhou, ca marche

    Je ne savais pas que la methode POST n'était pas limité à 256 caractéres du coup en appliquant la bonne vieille méthode, celle de malbaladejo et du coup ca marche bien correctement.

    MERCI les gars

    Je met resolu mais... je serais curieux de savoir comment faire avec(Question de culture générale)

  8. #8
    Membre confirmé
    Avatar de malbaladejo
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Avril 2002
    Messages : 379
    Points : 527
    Points
    527
    Par défaut
    Je fais de l'ajax régulièrement mais j'utilise script.aculo.us.
    Ca rend les appels ajax plus simple a mettre en place mais ca masque le fonctionnement réel.
    Je n'ai donc pas de réponse à te donner.

  9. #9
    Membre actif Avatar de dragonfly
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    464
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 464
    Points : 240
    Points
    240
    Par défaut
    Ark, je préfére tout faire moi même (c'est long mais j'en tire satisfaction ).

    Je vais quand même essayer de trouver et si je trouve je compléte ce topic

    MERCI
    Bye

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 02/03/2011, 21h32
  2. Réponses: 24
    Dernier message: 17/08/2010, 16h01
  3. Comment récuper les valeurs de mon insert?
    Par moi26 dans le forum Sql*Plus
    Réponses: 4
    Dernier message: 17/02/2010, 10h22
  4. Réponses: 5
    Dernier message: 22/12/2009, 11h59
  5. Réponses: 21
    Dernier message: 18/11/2008, 14h36

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo