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

AJAX Discussion :

[AJAX] Récupération valeur en ajax


Sujet :

AJAX

  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut [AJAX] Récupération valeur en ajax
    Bonjour, j'ai un souci avec un appel en ajax. Je récupère bien ma valeur renvoyée par mon fichier php sauf qu'elle est précédée de plusieurs balises et autre code html. J'ai déjà testé l'existence de s2 et il existe, contient bien la valeur que je lui est passé. Deplus, si s2 n'existé pas, ma fonction ne renverrait pas true mais false.
    Voici la réponse qu'il me founit :
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <br />
    <font size='1'><table class='xdebug-error xe-notice' dir='ltr' border='1' cellspacing='0' cellpadding='1'>
    <tr><th align='left' bgcolor='#f57900' colspan="5"><span style='background-color: #cc0000; color: #fce94f; font-size: x-large;'>( ! )</span> Notice: Undefined index: s2 in D:\wamp\www\Tarek\new2.php on line <i>13</i></th></tr>
    <tr><th align='left' bgcolor='#e9b96e' colspan='5'>Call Stack</th></tr>
    <tr><th align='center' bgcolor='#eeeeec'>#</th><th align='left' bgcolor='#eeeeec'>Time</th><th align='left' bgcolor='#eeeeec'>Memory</th><th align='left' bgcolor='#eeeeec'>Function</th><th align='left' bgcolor='#eeeeec'>Location</th></tr>
    <tr><td bgcolor='#eeeeec' align='center'>1</td><td bgcolor='#eeeeec' align='center'>0.0004</td><td bgcolor='#eeeeec' align='right'>371936</td><td bgcolor='#eeeeec'>{main}(  )</td><td title='D:\wamp\www\Tarek\new2.php' bgcolor='#eeeeec'>..\new2.php<b>:</b>0</td></tr>
    </table></font>
    true

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 198
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 198
    Par défaut
    Bonjour,
    ...sauf qu'elle est précédée de plusieurs balises et autre code html.
    est qu'est ce qui t'empêche de les supprimer de la réponse ?

  3. #3
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Ton erreur est plutôt du côté php. Peut-on voir ton code php appelé?

    A+.

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    Le voici :
    Code php : 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
    <?php
    try 
    {
    	$bdd = new PDO('mysql:host=localhost;dbname=tarek', 'root', '');
    }
    catch(Exception $e)
    {
    	die('Erreur : '.$e->getMessage());
    }
    if(isset($_POST['s1']))
    	{
    		$data=$_POST['s1']; 
    		$data2=$_POST['s2'];
    		$req = $bdd->prepare('SELECT login, mot_de_passe
    							  FROM utilisateurs
    							  WHERE login = ?
    							');
    		$req->execute(array($data));
    		$donnees = $req->fetch();
    		if($donnees['mot_de_passe'] == $data2)
    			echo 'true';
    		else echo 'false';
    		$req->closeCursor();
    	}
    else echo "Erreur de login";
    ?>

  5. #5
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Il semble qu'il n'y a pas de variable s2 dans l'envoie via AJAX. Peut-tu nous montrer ton code javascript.

  6. #6
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    Oui bien sur.
    Code jscript : 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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    <script>
    	function valider()
    	{
    		var login = document.forms["form"].elements["login"].value;
    		var mdp = document.forms["form"].elements["mpasse"].value;
    		if(window.XMLHttpRequest)
    			xhr = new XMLHttpRequest ();
    		else if (window.ActiveXObject("Microsoft.XMLHTTP"))
    			xhr = new ActiveXObject("Microsoft.XMLHTTP");
    		else 
    		{	
    			alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
    			return;
    		}
    		var filename = "new2.php";
    		var s1 = login;
    		var s2 = mdp;
    		var data = null;
    		if(s1 != "" && s2 != "")
    			data = "s1="+login+"s2="+mdp;
    			alert(data);
    		xhr.open("POST", filename,false);
    		xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
    		xhr.send(data);
    		alert(xhr.responseText);
    		if(xhr.responseText == "true")
    		{
    			return true;
    		}
    		else
    		{ 
    			alert("Error !");
    			return false;
    		}
    	}
    </script>

  7. #7
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    data = "s1="+login+"s2="+mdp;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    data = "s1="+login+"&s2="+mdp;
    A+.

  8. #8
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    Je n'ai plus aucune valeur dans le data que j'envoi avec ta solution :/

  9. #9
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Peut-on voir ton code HTML.

    Sinon, tu dois tester le login et mot de passe directement dans la requête SQL, pas seulement le login.

    A+.

  10. #10
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    Code html : 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
    27
    <form name="form" id="form" action="new2.php" method="POST" onsubmit="return valider();" >
    	<br><br><br><br>
    	<div id="right">
    	<div class="sous_titre"><center> Veuillez entrer votre login et votre mot de passe </center></div>
    	<br><br>
    	<div class="infos">
    	<table border="0">
    		<tr>
    			<td> Login : </td>
    			<td><input type="text" id="login" name="login" maxlength="10"></td>
    		</tr>
    		<tr>
    			<td> Mot de passe : </td>
    			<td><input type="password" id ="mpasse" name="mpasse" size="10" maxlength="10" value=""></td>
    		</tr><br>
    	</table>
    	</div>
    	</div>
    	<input type="hidden" name="verif_login" value="<?php echo $chaine_login;?>"/>
    	<input type="hidden" name="verif_mdp" value="<?php echo $chaine_mdp;?>"/>
    	<div id="left">
    		<br><br><br><br>
    		<input type="submit" name="bouton" value="ACCES UTILISATEUR" onsubmit="valider_ut()" /><br><br><br><br>
    		<input type="submit" name="bouton" value="ACCES ADMINISTRATEUR"/>
    		<br><br><br><br>
    	</div>
    </form>

  11. #11
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var login = document.forms["form"].elements["login"].value;
    		var mdp = document.forms["form"].elements["mpasse"].value;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    var login = document.getElementById("login").value;
    		var mdp = document.getElementById("mpasse").value;
    Le problème n'est pas là mais fait un var_dump pour tester.
    Le balise input doit être auto-fermante aussi
    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    <input type="text" id="login" name="login" maxlength="10" />
    de même pour mpasse.

  12. #12
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    En faisant un alert(data) j'ai null comme réponse.

  13. #13
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    Les variables s1 et s2 ne servent à rien

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    var data = null;
    		if(login != "" && mdp != "")
    			data = "s1="+login+"&s2="+mdp;
    			alert(data);
    T'as bien rempli les champs login et mot de passe?

    A+.

  14. #14
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Mai 2013
    Messages
    181
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2013
    Messages : 181
    Par défaut
    Le problème est que parfois le mot de passe doit être vide.

  15. #15
    Rédacteur/Modérateur
    Avatar de andry.aime
    Homme Profil pro
    Inscrit en
    Septembre 2007
    Messages
    8 391
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Ile Maurice

    Informations forums :
    Inscription : Septembre 2007
    Messages : 8 391
    Par défaut
    A toi de voir tes conditions ici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if(login != "" && mdp != "")

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/01/2016, 22h14
  2. [AJAX] Récupération $_POST après Ajax
    Par Sekigawa dans le forum AJAX
    Réponses: 1
    Dernier message: 12/09/2012, 11h15
  3. [AJAX] Récupération valeur pour traitement
    Par Beniti dans le forum AJAX
    Réponses: 0
    Dernier message: 05/09/2011, 12h09
  4. Réponses: 1
    Dernier message: 19/05/2009, 12h48
  5. [AJAX] Récupération de données AJAX -> PHP
    Par TheBuzz dans le forum Général JavaScript
    Réponses: 14
    Dernier message: 12/06/2008, 18h31

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