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

jQuery Discussion :

$.post et type des valeurs retour


Sujet :

jQuery

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 7
    Points
    7
    Par défaut $.post et type des valeurs retour
    Bonjour.

    Je quémande votre aide pour une fonction js utilisant $.post() :

    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
    20
    21
    22
    23
    24
    25
    26
    function ConnectUser()
    {
    	var identifiant = $('input#identifiant').val().trim();
    	var password = cryptesha256($('input#password').val(), 1);
    	var icon_identif = $('img#identif_bullet');
    	var icon_password = $('img#password_bullet');
    	var error = $('div#js_er_login_box');
     
    	if(verifPassword() & verifIdentif())
    	{
    		$.post(
    			"./Users/Action_connection.php",
    			{ Ajax: "True", identifiant: identifiant, crypt_password: password },
    			function display_result(msg)
    			{
    				alert(typeof(msg) + " *" + msg + "*");
     
    				if(msg == "1")
    				{alert("if");}
     
    				else
    				{alert("else");}
    			}
    		);
    	}
    }
    Ca a l'air tout simple, mais dans ce cas, ben j'ai un soucis au niveau des valeurs de retour : msg. En effet, le fichier php appelé renvoie soit 1 soit 0. Le alert(typeof(msg) + " *" + msg + "*"); m'affiche string *1*. Mais le message suivant reste else.

    J'ai déjà utilisé $.post dans plusieurs autres cas qui fonctionnent, mais là, pas moyen ...

    Auriez vous des idées?

    merci

  2. #2
    Membre habitué
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Décembre 2010
    Messages
    100
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Décembre 2010
    Messages : 100
    Points : 125
    Points
    125
    Par défaut
    Tu as déjà essayé de convertir ton string en Int avec la fonction parseInt?
    Peut-être que à ce moment là ta condition marchera en enlevant les guillemets bien sur

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    11
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 11
    Points : 7
    Points
    7
    Par défaut
    Ro que oui j'ai essayé ! Et ca devient encore plus étrange

    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
    20
    21
    22
    23
    24
    25
    26
    function ConnectUser()
    {
    	var identifiant = $('input#identifiant').val().trim();
    	var password = cryptesha256($('input#password').val(), 1);
    	var icon_identif = $('img#identif_bullet');
    	var icon_password = $('img#password_bullet');
    	var error = $('div#js_er_login_box');
     
    	if(verifPassword() & verifIdentif())
    	{
    		$.post(
    			"./Users/Action_connection.php",
    			{ Ajax: "True", identifiant: identifiant, crypt_password: password },
    			function display_result(msg)
    			{
    				alert(typeof(parseInt(msg)) + " *" + parseInt(msg) + "*");
     
    				if(msg == 1)
    				{alert("if");}
     
    				else
    				{alert("else");}
    			}
    		);
    	}
    }
    Dans ce cas là, les alert me retournent : number *NaN*, et else. J'ai vraiment du mal a comprendre cette erreur. J'ai donc essayé des solutions alternatives desepérées dans la condition if : if(msg == 1), if(msg == true) ...

    j'ai aussi changé de méthod pour la requette ajax, en utilisant la fonction $.ajax :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    $.ajax
    ({
    	type: "POST",
    	async: false,
    	url: "./Users/Action_connection.php",
    	success:	function(msg)
    				{
    					....
    				}
    });
    sans succès. J'ai d'autres fonctions js qui ont la même syntaxe et qui fonctionnent pourtant ! Le premier alert() me retournant string *1* me fait dire que ce n'est pas au niveau du fichier php qu'il y a un problème, puisque la valeur de retour semble correcte et du bon type....

  4. #4
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Novembre 2010
    Messages : 17
    Points : 14
    Points
    14
    Par défaut
    Salut,
    Passe par JSON
    a++

Discussions similaires

  1. Réponses: 3
    Dernier message: 19/03/2008, 22h11
  2. Réponses: 13
    Dernier message: 01/02/2006, 12h00
  3. typed des arguments et retour non connus
    Par will11 dans le forum C
    Réponses: 3
    Dernier message: 11/01/2006, 23h17
  4. stocker des valeurs de type différent
    Par jakouz dans le forum Langage
    Réponses: 3
    Dernier message: 28/11/2005, 09h36
  5. Obtenir la liste des valeurs possibles d'un type
    Par pascalT dans le forum Langage
    Réponses: 5
    Dernier message: 05/10/2004, 15h46

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