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

JavaScript Discussion :

formulaire et base de données


Sujet :

JavaScript

  1. #1
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut formulaire et base de données
    Bonjour,

    Voila mon objectif :

    J'ai un formulaire avec 3 champs :

    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
    27
    28
    29
    30
    31
     
                                      <form method="POST" action="enregistrementMDPOublie.php" name="formID" id="formID" class="formular" enctype="multipart/form-data">
                                            <FIELDSET>
                                                    <LEGEND>Réponse à votre question secrète :</LEGEND>
                                                           <table>
                                                                 <tr>
                                                				       <td><span><label for="login">Votre @-mail : </span></td>
                                                            		   <td><input type="text" name="login" id="login" value="" class="validate[required,custom[email]]"/></label></td>
                                                                       <td><input name="homonyme" type="button" id="homonyme" value="test_homonyme"/></td>
                                                        				<br>
                                                                 </tr>
     
                                                                 <div id="result" style="display:none">
                                                                     <tr>
                                                    				       <td><span>Votre question secrète : </span></td>
                                                                		   <td><input type="text" name="questSecrete" id="questSecrete" value="" class="validate[]"/></td>
                                                                     </tr>
                                                                     <tr>
                                                    				       <td><span><label for="repSecrete">Votre réponse ? </span></td>
                                                                		   <td><input type="password" name="repSecrete" id="repSecrete" value="" class="validate[required]"/></label></td>
                                                                     </tr>
                                                                 </div>
                                                           </table>
                                            </FIELDSET><br>
                                                          <center>
                                                                <span>
                                                                    <input type="submit" value="Valider" />
                                                                    <INPUT TYPE="button" VALUE="Annuler" onClick="history.back()">
                                                                </span>
                                                          </center>
                                      </form>
    j'aimerais que lorsque je clique sur le bouton à droite du mail, grace à un script jquery, javascript ou autre, intéroger la base de données pour voir si le mail existe....

    SI le mail existe j'affiche la div result avec la question secrète que je récupère de la BDD, si le mail existe pas message (css d'erreur ou autre) votre mail n'existe pas..

    est-il possible de faire ca...

    je suis débutant et certaine chose me sont encore difficile.

    merci par avance.

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    ça s'appelle ajax ou xmlhttprequest.

    C'est très bien géré par Jquery en particulier pour la gestion de la réponse du serveur .

  3. #3
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    ok ok mais tu as des exemples sou la main, car depuis ce matin je test des trucs et ca marche pas...

    des trucs de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
                                                                    <script type="text/javascript">
                                                                    $(document).ready(function(){
                                                                    	$("#homonyme").click(function(){
                                                                    		$.post("requete.php", { nom: $("#login").val() },
                                                                    			function(data) {
                                                                    				$("#result").text("Il existe "+data+" utilisateur avec ce nom");
                                                                    		});
                                                                    	});
                                                                    });
                                                                    </script>
    et le fichier requete.php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?php
     
        //Permet la connexion à la BDD
                include("templates/connexionBDD.php");
        //Fin de la connexion à la BDD
     
     
    	$login = $_POST['login'];
     
    	$query = "SELECT * FROM utilisateurs WHERE email_utilisateurs =$login";
    	$result = mysql_query($query);
    	$num_rows = mysql_num_rows($result);
    	echo $num_rows;
    tu as des pistes ...?

    jvais regarder en attendant le xmlhttprequest.

    merci !

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Points : 496
    Points
    496
    Par défaut
    Regarde ton code un peu. Tu envoies nom en ajax et tu essaye de récupérer login en php. Comment veux-tu que ça marche ?

  5. #5
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Au-delà de ça, j'espère pour toi que personne n'aura l'idée farfelue (voire saugrenue) de choisir comme login toto OR 1=1
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $login = $_POST['login'];
    $query = "SELECT * FROM utilisateurs WHERE email_utilisateurs =$login";

  6. #6
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Ecouté, d'une part je suis débutant mais débutant ne veut pas dire boufon...

    D'autre part pour répondre :

    $.post("requete.php", { nom: $("#login").val() },

    nom ici n'a aucune importance.
    Mon champ input a en id et name="login"

    Pour répondre à la deuxième réponse : il ne pouront pas choisir toto comme login
    car mon login c'est une adresse mail qui est unique pour pouvoir créer son compte donc pas de problème à ce niveau là.

    Par rapport au mot de passe pareil, il ne poura pas y avoir de mot passe identique si une fail venez à être présente car j'ai ajouté un grain de sable et j'ai crypter le mot de passe.

    Maintenant si quelqu'un veut bien avoir la sympathie de m'aider, je suis d'accords de prendre des remarques évolutive et non des critiques gratuite...

    mon but étant de permettre la saisie du mail à l'utilisateur qui à oublier son mot de passe.
    Si le mot de passe est présent dans la base de données j'affiche la div result avec l'appel de sa question secrète et un champ pour qu'il puisse saisir sa réponse....

    merci par avance de votre aide

  7. #7
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par cragoroth
    Ecouté, d'une part je suis débutant mais débutant ne veut pas dire boufon...
    Manifestement, dans ton cas, ça ne veut pas dire humble non plus...

    nom ici n'a aucune importance.
    En dehors du fait, bien sûr, que c'est le nom que tu donnes au paramètre envoyé alors que coté serveur, tu en cherches un autre. Ce léger détail mis à part, effectivement, ça n'a aucune importance.

    il ne pouront pas choisir toto comme login
    Vu que tu n'effectues apparemment aucune vérification sur le format des données reçues en PHP, si, ils pourront mettre ce qu'ils veulent en vue de très jolies (mais manifestement pas inquiétantes) injections SQL...

  8. #8
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Mise à part toutes les précisions que tu me donne tu n'a pas tous les scripts sous les yeux et j'ai dis que j'avais tester certaines choses et j'avais des problèmes car je me suis formé tous seul.

    une fois la solution trouvé avec ou sans ton aide, je metterais la sécurité nécessaire que j'ai déjà fais avant.

    Maintenant est-tu prêts à m'aider ou à continuer les critiques gratuites .....


  9. #9
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Citation Envoyé par cragoroth
    Maintenant est-tu prêts à m'aider
    dukej t'a déjà donné la réponse, mais tu refuses de le croire !

  10. #10
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Peut-être.
    Je te redonne ce que j'ai fais :

    mon formulaire :

    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    <form method="POST" action="enregistrementMDPOublie.php" name="formID" id="formID" class="formular" enctype="multipart/form-data">
                                            <FIELDSET>
                                                    <LEGEND>Réponse à votre question secrète :</LEGEND>
                                                              <table>
                                                                   <tr>
                                                                            <td><span><label for="login">Votre @-mail : </span></td>
                                                              		        <td><input type="text" name="login" id="login" value="" class="validate[required,custom[email]]"/></label></td>
                                                                            <td><input name="homonyme" type="button" id="homonyme" value="test" /></td>
                                                              		        <br>
                                                                   </tr>
     
                                                                    <script type="text/javascript">
                                                                    $(document).ready(function(){
     
                                                                    	$("#homonyme").click(function(){
                                                                    		$.post("requete.php", { email: $("#login").val() },
                                                                    			function(data) {
                                                                    				$("#result").text("Il existe "+data+" utilisateur avec cet email");
                                                                    		});
                                                                    	});
     
                                                                    });
                                                                    </script>
                                                                   <tr>
                                                                       <td>
                                                                           <div id="result">
     
                                                                                       <tr>
                                                                      				       <td><span>Votre question secrète : </span></td>
                                                                                  		   <td><input type="text" name="questSecrete" id="questSecrete" value="" class="validate[]"/></td>
                                                                                       </tr>
                                                                                       <tr>
                                                                      				       <td><span><label for="repSecrete">Votre réponse ? </span></td>
                                                                                  		   <td><input type="password" name="repSecrete" id="repSecrete" value="" class="validate[required]"/></label></td>
                                                                                       </tr>
     
                                                                           </div>
                                                                       </td>
                                                                   </tr>
                                                              </table>
                                            </FIELDSET><br>
                                                          <center>
                                                                <span>
                                                                    <input type="submit" value="Valider" />
                                                                    <INPUT TYPE="button" VALUE="Annuler" onClick="history.back()">
                                                                </span>
                                                          </center>
                                      </form>
    lorsque j'appuis que le bouton "test" la page requete.php est appelé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    <?php
     
        //Permet la connexion à la BDD
                include("templates/connexionBDD.php");
        //Fin de la connexion à la BDD
     
     
    	$login = $_POST['login'];
     
    	$query = "SELECT * FROM utilisateurs WHERE email_utilisateurs =$login";
    	$result = mysql_query($query);
    	$num_rows = mysql_num_rows($result);
    	echo $num_rows;
    ensuite j'ai cela qui s'affiche :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Il existe <br /> <font size='1'><table class='xdebug-error' 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: login in C:\wamp\www\sovitrat.Fr\requete.php on line <i>8</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.0012</td><td bgcolor='#eeeeec' align='right'>368128</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\sovitrat.Fr\requete.php' bgcolor='#eeeeec'>..\requete.php<b>:</b>0</td></tr> </table></font> <br /> <font size='1'><table class='xdebug-error' 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> Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\wamp\www\sovitrat.Fr\requete.php on line <i>12</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.0012</td><td bgcolor='#eeeeec' align='right'>368128</td><td bgcolor='#eeeeec'>{main}( )</td><td title='C:\wamp\www\sovitrat.Fr\requete.php' bgcolor='#eeeeec'>..\requete.php<b>:</b>0</td></tr> <tr><td bgcolor='#eeeeec' align='center'>2</td><td bgcolor='#eeeeec' align='center'>0.0099</td><td bgcolor='#eeeeec' align='right'>375104</td><td bgcolor='#eeeeec'><a href='http://www.php.net/mysql_num_rows' target='_new'>mysql_num_rows</a> ( )</td><td title='C:\wamp\www\sovitrat.Fr\requete.php' bgcolor='#eeeeec'>..\requete.php<b>:</b>12</td></tr> </table></font> utilisateur avec cet email
    ca veut dire quoi en gros ???

  11. #11
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Voila d'ou était le problème :

    J'avais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $query = "SELECT * FROM utilisateurs WHERE email_utilisateurs =$login";
    au lieu de ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $query = "SELECT * FROM utilisateurs WHERE email_utilisateurs ='".$login."'";
    et du coup cela m'affiche bien 1 utilisateurs avec cet adresse mail....

    Merci quand même pour votre aide !

  12. #12
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $.post("requete.php", { email: $("#login").val() }
    Tu envoies le paramètre email
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    $login = $_POST['login'];
    tu testes le paramètre login.

  13. #13
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Hummm....tu persiste et moi aussi, j'aime ça :

    peut importe la valeur que je note ici :

    $.post("requete.php", { email: $("#login").val() }

    cela ne changera rien à mes tests derrière.


    $.post("requete.php", { email: $("#login").val() }

    Tu envoies le paramètre email

    je suis d'accords or ici "email" n'a pas d'importance, si je met toto, titi, cela marchera qd même donc ce n'est pas un paramètre( car il n'a aucune incidence sur le code)


    $login = $_POST['login'];

    tu testes le paramètre login.

    oui je test le paramètre login mais ici $_POST['login'] est bien la valeur de mon champ input
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" name="login" id="login" value="" class="validate[required,custom[email]]"/>
    donc je ne vois pas pourquoi c'est faux puisque ca marche.

    tu n'est pas d'accord avec moi !!!?

  14. #14
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    en même temps on n'a aucun moyen de savoir le type de tes champs

  15. #15
    Rédacteur

    Avatar de Bovino
    Homme Profil pro
    Développeur Web
    Inscrit en
    Juin 2008
    Messages
    23 647
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2008
    Messages : 23 647
    Points : 91 220
    Points
    91 220
    Billets dans le blog
    20
    Par défaut
    Je crois que tu n'as pas vraiment compris comment fonctionne AJAX...
    Lorsque tu fais une requête ($.post() en jQuery), tu envoies des paramètres, pas le formulaire, donc si, le nom que tu donnes aux paramètres ont une importance !

    Si ton code fonctionne, c'est uniquement parce que tu dois cliquer sur le bouton submit et pas sur le bouton homonyme.

  16. #16
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    pour répondre à SpaceFrog --> tous mes type sont indiqué dans la formulaire au début de la discussion.

    Pour te répondre maintenant BOVINO :

    Si ton code fonctionne, c'est uniquement parce que tu dois cliquer sur le bouton submit et pas sur le bouton homonyme.

    Encore une fois je ne suis pas bête, j'ai bien 2 bouton différent homonyme et submit.
    D'aiileur le bouton submit est caché car la div result ne s'affiche pas tant que l'on a pas cliqué sur le bouton homonyme.


    Lorsque tu fais une requête ($.post() en jQuery), tu envoies des paramètres, pas le formulaire, donc si, le nom que tu donnes aux paramètres ont une importance !

    Et comment explique tu que mon code fonctionne alors en restant avec titi...?
    $.post("requete.php", { titi: $("#login").val() },
    ou bien
    $.post("requete.php", { login: $("#login").val() },
    ou bien
    $.post("requete.php", { email: $("#login").val() },

    en tout cas cela fonctionne quand l'adresse mail n'est pas présente dans la base de données il m'affiche Il existe 0 utilisateur avec cet email

    Maintenant, pouvez-vous me guider sur une démarche...

    Losqu'il clique sur le bouton homonyme ou ok ...j'aimerais faire afficher la div result et dans mon le champ suivant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
                                                                                       <tr>
                                                                      				       <td><span>Votre question secrète : </span></td>
                                                                                  		   <td><input type="text" name="questSecrete" id="questSecrete" value="" class="validate[]"/></td>
                                                                                       </tr>
    j'aimerais afficher sa question qui est stoké en base de données mais seulement après avoir testé que son mail existe...

    des pistes ?

  17. #17
    Inactif  

    Profil pro
    Inscrit en
    Mai 2010
    Messages
    345
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 345
    Points : 496
    Points
    496
    Par défaut
    Citation Envoyé par cragoroth Voir le message
    Hummm....tu persiste et moi aussi, j'aime ça :

    peut importe la valeur que je note ici :

    $.post("requete.php", { email: $("#login").val() }

    cela ne changera rien à mes tests derrière.


    $.post("requete.php", { email: $("#login").val() }

    Tu envoies le paramètre email

    je suis d'accords or ici "email" n'a pas d'importance, si je met toto, titi, cela marchera qd même donc ce n'est pas un paramètre( car il n'a aucune incidence sur le code)


    $login = $_POST['login'];

    tu testes le paramètre login.

    oui je test le paramètre login mais ici $_POST['login'] est bien la valeur de mon champ input
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <input type="text" name="login" id="login" value="" class="validate[required,custom[email]]"/>
    donc je ne vois pas pourquoi c'est faux puisque ca marche.

    tu n'est pas d'accord avec moi !!!?
    Je te conseille de lire la doc : http://api.jquery.com/jQuery.post/
    deuxième paramètre : data
    data: map or string that is sent to the server with the request.
    Ca signifie que si tu envoies :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    {
    name : "roger",
    age : 12
    }
    ta page recois un $_POST['name'] et un $_POST['age']

    Sinon c'est qu'il y a un grave problème dans ton code. Et au vue de ce que je viens de voir, il y a clairement pleins de problèmes dans ton code.

  18. #18
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 640
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 640
    Points : 66 665
    Points
    66 665
    Billets dans le blog
    1
    Par défaut
    Oulà c'est maxi confusion là

    Le type de champs de base de donnée n'a rien à voir avec le type de la balise html ...

  19. #19
    Membre régulier
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Septembre 2008
    Messages
    171
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Septembre 2008
    Messages : 171
    Points : 106
    Points
    106
    Par défaut
    Alors si j'ai bien suivi :

    $.post("requete.php", { login: $("#login").val() },

    envoi un $_POST['login'] qui va contenir le mail saisie dans le champ prévu ?

    Mais du coté de mon fichier php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    
        //Permet la connexion à la BDD
                include("templates/connexionBDD.php");
        //Fin de la connexion à la BDD
    
    
    	$login = $_POST['login'];
    
    	$query = "SELECT * FROM utilisateurs WHERE email_utilisateurs ='".$login."'";
    	$result = mysql_query($query);
    	$num_rows = mysql_num_rows($result);
    	echo $num_rows;
    c'est juste alors si je fais ça ?

    je récupère bien ma valeur saisie dans le champ mais pas la valeur passé en paramètre ici : $.post("requete.php", { login: $("#login").val() },


    alors que faire pour récupérer la valeur passer ici :

    $.post("requete.php", { login: $("#login").val() },

  20. #20
    Modérateur

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

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 110
    Points : 44 919
    Points
    44 919
    Par défaut
    il te suffit de mettre
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    if(!empty($_POST['login'])){
      // ton code
    }
    else{
      echo 'PERDU!!!';
    }
    pour voir, depuis le temps, lié au essais, il me semble normal que l'utilisateur "vide" existe déjà...

Discussions similaires

  1. [MySQL] Insertion données formulaire dans base de données
    Par westlaux dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 21/06/2007, 20h17
  2. formulaire / php / base de données
    Par amandine_drooplette dans le forum Langage
    Réponses: 6
    Dernier message: 07/06/2007, 13h14
  3. Formulaire et base de données
    Par Néo{le pélo du 974} dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 04/06/2007, 12h04
  4. Formulaire et base de données
    Par Marye dans le forum IHM
    Réponses: 4
    Dernier message: 08/02/2007, 22h07
  5. [Conception] Formulaire et base de donnée ?
    Par heldev dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 10/03/2006, 17h09

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