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

Langage PHP Discussion :

erreur du traitement du formulaire inscription


Sujet :

Langage PHP

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut erreur du traitement du formulaire inscription
    bonjour,

    j'ai fais un formulaire avec un traitement pour vérifié si le champs est bien remplit lors de son inscription

    Si ça marche, c'est bon.

    Mais il faut faire une vérification en PHP.
    JS et ta vérification est désactivée en 3 clics.
    es ce que c'est bien utiliser le code js car là a mon avis ca fera ouvrir un pop up pour dire veuillez rentré un prenom etc..

    et que moi j'aimerais l'affiché les phrases sur une seuil page
    sans faire des pop up

    es ce quelqu'un a une idée comment je peux faire quand un membre s'inscrit s'inserre dans la base sql

    voilà mon code de la page inscription

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    <?php
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
     
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
     
    function control_form() {
     
    if (document.getElementById('pseudo').value==''){
    alert("le pseudo doit être renseigné" );
    return false; }
    else {
    return true;}
     
    if (document.getElementById('password').value==''){
    alert("le mot de passe doit être renseigné" );
    return false; }
    else {
    return true;
     
    if (document.getElementById('confirm').value==''){
    alert("le mot de passe doit être le même" );
    return false; }
    else {
    return true;}
     
    if (document.getElementById('email').value==''){
    alert("l'émail doit être renseigné" );
    return false; }
    else {
    return true;}
     
    if (document.getElementById('prenom').value==''){
    alert("Votre prènom doit être renseigné" );
    return false; }
    else {
    return true;}
     
    if (document.getElementById('date').value==''){
    alert("Votre date de naissance doit être renseigné" );
    return false; }
    else {
    return true;}
     
    if (document.getElementById('sexe').value==''){
    alert("Votre sexe doit être renseigné" );
    return false; }
    else {
    return true;}
     
    }
    } 
    // on vérifie si le captcha est bon 
    privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $_POST["recaptcha_challenge_field"],
                                    $_POST["recaptcha_response_field"]);
     
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
     
     
    {
    	$req = $pdo->prepare('REQUETE WHERE id = :id');
    $req->execute(array('id', $membre_id));
    }
    else
    {
    	// ici on affiche ton formulaire
     
    ?>
    <script type="text/javascript">
    var RecaptchaOptions = { theme : 'custom', custom_theme_widget: 'recaptcha_widget', lang : 'fr' };
    </script>
     
    <h1>Inscription au site</h1>
    <p style="text-align: center;"><strong>Vous devez remplir touts les champs avant de soumettre le formulaire.</strong></p>
    <form method="post" action="<?php echo getLienModule('membre', 'inscription'); ?>">
    <div id="tooltip"></div>
    <p><label for="pseudo">Nom d'utilisateur :</label> <input type="text" name="pseudo" id="pseudo" onkeyup="verifPseudo(this.value)" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier votre nom d'utilisateur après l'inscription." /> <span class="boxVerif" id="pseudobox"></span></p>
     
    <p><label for="password">Mot de passe :</label><input type="password" name="password" id="password" /></p>
     
    <p><label for="confirm">Confirmer le mot de passe :</label><input type="password" name="confirm_mdp" id="confirm" /></p>
     
    <p><label for="email">Votre adresse courriel :</label> <input type="text" name="email" id="email" onkeyup="verifEmail(this.value)" /> <span class="boxVerif" id="emailbox"></span></p>
     
    <p><label for="mailyes">Rendre votre adresse courriel publique ?</label> <input type="radio" name="mail" id="mailyes" value="oui" /> <label for="mailyes" style="float: none; font-weight: normal;">Oui</label>
    <input type="radio" name="mail" id="mailno" value="non" checked="checked" /> <label for="mailno" style="float: none; font-weight: normal;">Non</label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous pouvez changez ce paramètre à tout moment dans votre profil." /></p>
     
    <p><br /><label for="prenom">Votre prénom :</label> <input type="text" name="prenom" id="prenom" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label>Date de naissance :</label>
    <select name="dateN[0]" id="date">
    <?php for($i=1;$i<=31;$i++)
    {
    	 if($i < 10)
       $i = "0" . $i;
     
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
     
    ?>
    </select> / <select name="dateN[1]">
    <?php for($i = 1; $i <= 12; $i++)
    {
    	$months = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
    	echo "\n<option value='".$i."'>".$months[$i-1]."</option>";
    }
     
    ?></select> / <select name="dateN[2]">
    <?php for($i=1940;$i<=date("Y");$i++)
    {
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
    ?>
    </select>
    <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." />
    </p>
     
    <p><label>Votre sexe :</label><input type="radio" name="sexe" value="homme" id="homme" /><label for="homme" style="float: none;"><img src="../images/male.png" alt="Homme" /></label>&nbsp;&nbsp;&nbsp;<input type="radio" name="sexe" value="femme" id="femme" /><label for="femme" style="float: none;"><img src="../images/female.png" alt="Femme" /></label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label for="avatar">Avatar (facultatif) :</label><input type="file" name="avatar" id="avatar" />&nbsp;(Taille maximale : 10 ko)</p>
     
    <p><label>&nbsp;</label><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter" style="float: none;">Oui, je désire m'abonner à l'infolettre</label></p>
     
    <?php // Recaptcha
    	$publickey = '6LdiAskSAAAAAPkrlIzLRZ8dHpeNjMI3Csrs6uwr';
    ?>
    <div id="recaptcha_widget" style="display:none; margin-left: 230px;">
       <div id="recaptcha_image"></div>
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Veuillez réessayer.</div>
     
       <span class="recaptcha_only_if_image"><label for="recaptcha_response_field" style="float: none;">Veuillez recopier les mots ci-dessus :</label></span>
       <span style="vertical-align: middle; display: inline-block;">
    	   <a href="javascript:Recaptcha.reload()"><img src="../images/refresh.png" alt="" /></a>
    	   <a href="javascript:Recaptcha.showhelp()"><img src="../images/help.png" alt="" /></a>
       </span>
       <br />
     
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" />
     
     </div>
     
     <script type="text/javascript"
        src="http://www.google.com/recaptcha/api/challenge?k=<?php echo $publickey; ?>">
     </script>
     <noscript>
       <iframe src="http://www.google.com/recaptcha/api/noscript?k=<?php echo $publickey; ?>"
            height="300" width="500" frameborder="0"></iframe><br /><label>&nbsp;</label>
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
       <input type="hidden" name="recaptcha_response_field"
            value="manual_challenge" />
     </noscript>
    <br />
    <br />
    <label>&nbsp;</label><input type="submit" value="S'inscrire" OnClick="javascript:if(!control_form()) return false;" />
    </form>
    	<?php	  // fin du formulaire et on ferme la condition pour le traitement + un méssage en disant veuillez vérifié dans votre boîte de mail afin de validé de validé votre inscription 
    } 
    ?>
    si je mets le code pour vérifier que le captcha est bon ou pas il me dit :

    Parse error: syntax error, unexpected '=' in /var/www/legtux.org/users/monsite/modules/membre/inscription.php on line 55
    merci de votre aide afin qu'on puisse s'inscrire a mon site avec les champs obligatoire

  2. #2
    Membre du Club
    Homme Profil pro
    au
    Inscrit en
    Mars 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : au
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2011
    Messages : 41
    Points : 52
    Points
    52
    Par défaut
    T a oublié quelque chose regarde cette ligne (Ligne 55) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    il faut mettre un $ à privatekey

    et ça deviens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    merci j'ai corriger et là il me dit une autre érreur

    Parse error: syntax error, unexpected T_ELSE in /var/www/legtux.org/users/monsite/modules/membre/inscription.php on line 71
    et ensuite comment je dois proceder pour que les membres puissent remplir les champs obligatoire qui sont :

    1. Nom d'utilisateur :
    2. Mot de passe :
    3. Confirmer le mot de passe :
    4. Votre adresse courriel :
    5. Votre prénom :
    6. Date de naissance :
    7. Votre sexe :
    8. Le captcha :

    et le reste qui est non obligatoire pour valider l'inscription

    • Rendre votre adresse courriel publique ?
    • Avatar (facultatif) : pour info j'ai mis le code pour mettre des avatar par défaults ca dépendras si c'est un homme ou une femme


    mais j'ai oublier de mettre dans code de m requette afin des qu'on s'incrit il s'inserre dans la base sql

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req = $pdo->prepare('REQUETE WHERE id = :id');
    $req->execute(array('id', $membre_id));
    merci de m'aidé a faire l'inscription et quil enregistre dans la base sql après avoir validé leurs incription

  4. #4
    Membre du Club
    Homme Profil pro
    au
    Inscrit en
    Mars 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : au
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2011
    Messages : 41
    Points : 52
    Points
    52
    Par défaut
    Dit moi il sert à quoi le else à la ligne 71 ?

    l'erreur elle est la

    Regarde bien ces lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
     
     
    {
    	$req = $pdo->prepare('REQUETE WHERE id = :id');
    $req->execute(array('id', $membre_id));
    }
    ces deux lignes
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    	$req = $pdo->prepare('REQUETE WHERE id = :id');
    $req->execute(array('id', $membre_id));
    tu les ai mit entre les accolades alors il leur faudra une condition.

  5. #5
    Membre du Club
    Homme Profil pro
    au
    Inscrit en
    Mars 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : au
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2011
    Messages : 41
    Points : 52
    Points
    52
    Par défaut
    Pour les champs obligatoire tu devras côntroler que l'utilisateur a bien remplis les champs obligatoire, pour cela il te faut utiliser un empty (vide)

    petit exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $nom="";
    $prenom="Dz";
    if (empty($nom)) { 
    echo "Merci de remplir le champ nom";
    }
    if (empty($prenom)) {
    echo "Merci de remplir le champ prenom";
    }
    la 1er condition vas te renvoyer un TRUE parce que la variable $nom est vide, alors que la 2éme condition vas te renvoyer un FALSE parce que la variable $prenom n'est pas vide.

  6. #6
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    merci là j'ai mis pour les condition et afin qu'il puisse enregistre dans la base sql

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    <?php
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
     
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
     
    $pseudo="";
    $password="";
    $confirm="";
    $email="";
    $prenom="";
    $date="";
    $sexe="";
    if (empty($pseudo)) { 
    echo "Veuillez mettre un pseudo";
    }
    if (empty($password)) {
    echo "Veuillez mettre un mot de passe";
    }
    if (empty($confirm)) { 
    echo "Veuillez confirmé votre mot de passe";
    }
    if (empty($email)) {
    echo "Veuillez mettre une addresse valide";
    }
    if (empty($prenom)) { 
    echo "Veuillez mettre votre vrai prénom";
    }
    if (empty($date)) {
    echo "Veuillez mettre votre date de naissance";
    }
    if (empty($sexe)) {
    echo "Veuillez mettre votre sexe";
    }
     
    // on vérifie si le captcha est bon 
    privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $_POST["recaptcha_challenge_field"],
                                    $_POST["recaptcha_response_field"]);
     
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
     
    // là on met un code pour enregistrer les infos dans la base sql
    	$req = $pdo->prepare('REQUETE WHERE id = :id');
    $req->execute(array('id', $membre_id));
     
     
     
    {
    	// ici on affiche ton formulaire
    ensuite il y a le formulaire qui est le même que le premier post
    ?>
    il me dit érreur :

    Parse error: syntax error, unexpected '=' in /var/www/legtux.org/users/monsite/modules/membre/inscription.php on line 38
    merci de ton aide afin qu'on puisse remplise tout les champs obligatoire

    et les 2 champs qui ne sont pas obligatoire sont :

    Rendre votre adresse courriel publique ?

    Avatar (facultatif) : pour info j'ai mis le code pour mettre des avatar par défaults ca dépendras si c'est un homme ou une femme

    car là j'ai un code pour les avatars mais sur ancien version et comme là je refait tout avec une nouvelle version on verra après avoir m'aidé a corriger les champs obligatoire afin qu'il puisse enregistré et qui soit dans la base sql

    merci de votre aide

  7. #7
    En attente de confirmation mail
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2011
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Orne (Basse Normandie)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 32
    Points : 54
    Points
    54
    Par défaut
    Citation Envoyé par Devildz Voir le message
    T a oublié quelque chose regarde cette ligne (Ligne 55) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    il faut mettre un $ à privatekey

    et ça deviens :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    C'est la même erreur que précédement

  8. #8
    Membre du Club
    Homme Profil pro
    au
    Inscrit en
    Mars 2011
    Messages
    41
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Nouvelle-Zélande

    Informations professionnelles :
    Activité : au
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2011
    Messages : 41
    Points : 52
    Points
    52
    Par défaut
    La ou je t'ai expliqué la fonction empty tu m'a pas bien compris, lorsque tu contôle si le champs est remplis ou pas, toi même si le champs pseudo n'est pas remplis il vas afficher le message et il vas exécuter la requete SQL aussi, ce qu'il faut c'est d'utiliser un Else ou un Booléen comme ça tu sera que si l'utilisateur ne tape rien, alors rien ne sera exécuter.

    dit moi ces ligne de code, pour quoi y a rien dans aucune de ces variables :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    $pseudo="";
    $password="";
    $confirm="";
    $email="";
    $prenom="";
    $date="";
    $sexe="";
    si non t'aura toujours les message d'erreur.

    et aussi à la 38 éme ligne t a encore fait l'erreur précédente :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    il faut ajouter $ à privatekey car privatekey c'est une variable

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";

  9. #9
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    Excusez-moi pour le captcha c'est juste un oubli.

    Donc j'ai suivi un tuto trouvé sur un autre site, mais cela ne fonctionne pas, il ne veut pas enregistrer.

    Merci de votre aide.

    Fatal error: Call to a member function prepare() on a non-object in /var/www/legtux.org/users/monsite/modules/membre/inscription.php on line 128

    Voilà mon code modifié :

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    <?php
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
     
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
     
    if (empty($_POST['pseudo'])) // Si on la variable est vide, on peut considérer qu'on est sur la page de formulaire
     
    {
    	// ici on affiche ton formulaire
     
    ?>
    <script type="text/javascript">
    var RecaptchaOptions = { theme : 'custom', custom_theme_widget: 'recaptcha_widget', lang : 'fr' };
    </script>
     
    <h1>Inscription au site</h1>
    <p style="text-align: center;"><strong>Vous devez remplir touts les champs avant de soumettre le formulaire.</strong></p>
    <form method="post" action="<?php echo getLienModule('membre', 'inscription'); ?>">
    <div id="tooltip"></div>
    <p><label for="pseudo">Nom d'utilisateur :</label> <input type="text" name="pseudo" id="pseudo" onkeyup="verifPseudo(this.value)" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier votre nom d'utilisateur après l'inscription." /> <span class="boxVerif" id="pseudobox"></span></p>
     
    <p><label for="password">Mot de passe :</label><input type="password" name="password" id="password" /></p>
     
    <p><label for="confirm">Confirmer le mot de passe :</label><input type="password" name="confirm_mdp" id="confirm" /></p>
     
    <p><label for="email">Votre adresse courriel :</label> <input type="text" name="email" id="email" onkeyup="verifEmail(this.value)" /> <span class="boxVerif" id="emailbox"></span></p>
     
    <p><label for="mailyes">Rendre votre adresse courriel publique ?</label> <input type="radio" name="mail" id="mailyes" value="oui" /> <label for="mailyes" style="float: none; font-weight: normal;">Oui</label>
    <input type="radio" name="mail" id="mailno" value="non" checked="checked" /> <label for="mailno" style="float: none; font-weight: normal;">Non</label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous pouvez changez ce paramètre à tout moment dans votre profil." /></p>
     
    <p><br /><label for="prenom">Votre prénom :</label> <input type="text" name="prenom" id="prenom" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label>Date de naissance :</label>
    <select name="dateN[0]" id="date">
    <?php for($i=1;$i<=31;$i++)
    {
    	 if($i < 10)
       $i = "0" . $i;
     
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
     
    ?>
    </select> / <select name="dateN[1]">
    <?php for($i = 1; $i <= 12; $i++)
    {
    	$months = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
    	echo "\n<option value='".$i."'>".$months[$i-1]."</option>";
    }
     
    ?></select> / <select name="dateN[2]">
    <?php for($i=1940;$i<=date("Y");$i++)
    {
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
    ?>
    </select>
    <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." />
    </p>
     
    <p><label>Votre sexe :</label><input type="radio" name="sexe" value="homme" id="homme" /><label for="homme" style="float: none;"><img src="../images/male.png" alt="Homme" /></label>&nbsp;&nbsp;&nbsp;<input type="radio" name="sexe" value="femme" id="femme" /><label for="femme" style="float: none;"><img src="../images/female.png" alt="Femme" /></label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label for="avatar">Avatar (facultatif) :</label><input type="file" name="avatar" id="avatar" />&nbsp;(Taille maximale : 10 ko)</p>
     
    <p><label>&nbsp;</label><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter" style="float: none;">Oui, je désire m'abonner à l'infolettre</label></p>
     
    <?php // Recaptcha
    	$publickey = '6LdiAskSAAAAAPkrlIzLRZ8dHpeNjMI3Csrs6uwr';
    ?>
    <div id="recaptcha_widget" style="display:none; margin-left: 230px;">
       <div id="recaptcha_image"></div>
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Veuillez réessayer.</div>
     
       <span class="recaptcha_only_if_image"><label for="recaptcha_response_field" style="float: none;">Veuillez recopier les mots ci-dessus :</label></span>
       <span style="vertical-align: middle; display: inline-block;">
    	   <a href="javascript:Recaptcha.reload()"><img src="../images/refresh.png" alt="" /></a>
    	   <a href="javascript:Recaptcha.showhelp()"><img src="../images/help.png" alt="" /></a>
       </span>
       <br />
     
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" />
     
     </div>
     
     <script type="text/javascript"
        src="http://www.google.com/recaptcha/api/challenge?k=<?php echo $publickey; ?>">
     </script>
     <noscript>
       <iframe src="http://www.google.com/recaptcha/api/noscript?k=<?php echo $publickey; ?>"
            height="300" width="500" frameborder="0"></iframe><br /><label>&nbsp;</label>
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
       <input type="hidden" name="recaptcha_response_field"
            value="manual_challenge" />
     </noscript>
    <br />
    <br />
    <label>&nbsp;</label><input type="submit" value="S'inscrire" OnClick="javascript:if(!control_form()) return false;" />
    </form>
    	<?php	  // fin du formulaire et on ferme la condition pour le traitement + un méssage en disant veuillez vérifié dans votre boîte de mail afin de validé de validé votre inscription 
    } 
     
     //On est dans le cas traitement
    {
        $pseudo_erreur1 = NULL;
        $pseudo_erreur2 = NULL;
        $mdp_erreur = NULL;
        $email_erreur1 = NULL;
        $email_erreur2 = NULL;
        $prenom_erreur = NULL;
        $sexe_erreur = NULL;
        $avatar_erreur = NULL;
        $avatar_erreur1 = NULL;
        $avatar_erreur2 = NULL;
        $avatar_erreur3 = NULL;
    //On récupère les variables
        $i = 0;
        $temps = time(); 
        $pseudo=$_POST['pseudo'];
        $prenom = $_POST['prenom'];
        $email = $_POST['email'];
        $sexe = $_POST['sexe'];
        $pass = md5($_POST['password']);
        $confirm = md5($_POST['confirm']);
     
        //Vérification du pseudo
        $query=$db->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
        $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
        $query->execute();
        $pseudo_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
        if(!$pseudo_free)
        {
            $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre";
            $i++;
        }
     
        if (strlen($pseudo) < 3 || strlen($pseudo) > 15)
        {
            $pseudo_erreur2 = "Votre pseudo est soit trop grand, soit trop petit";
            $i++;
        }
     
        //Vérification du mdp
        if ($pass != $confirm || empty($confirm) || empty($pass))
        {
            $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent, ou sont vides";
            $i++;
        }
     
    $query=$db->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
    $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
    $query->execute();
    $pseudo_free=($query->fetchColumn()==0)?1:0;
     
    //Vérification de l'adresse email
     
        //Il faut que l'adresse email n'ait jamais été utilisée
        $query=$db->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_email =:mail');
        $query->bindValue(':mail',$email, PDO::PARAM_STR);
        $query->execute();
        $mail_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
     
        if(!$mail_free)
        {
            $email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
            $i++;
        }
        //On vérifie la forme maintenant
        if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email))
        {
            $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
            $i++;
        }
    //Vérification de l'avatar :
        if (!empty($_FILES['avatar']['size']))
        {
            //On définit les variables :
            $maxsize = 10024; //Poid de l'image
            $maxwidth = 100; //Largeur de l'image
            $maxheight = 100; //Longueur de l'image
            $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
     
            if ($_FILES['avatar']['error'] > 0)
            {
                    $avatar_erreur = "Erreur lors du transfert de l'avatar : ";
            }
            if ($_FILES['avatar']['size'] > $maxsize)
            {
                    $i++;
                    $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong>    contre <strong>".$maxsize." Octets</strong>)";
            }
     
            $image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
            if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
            {
                    $i++;
                    $avatar_erreur2 = "Image trop large ou trop longue : 
                    (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)";
            }
     
            $extension_upload = strtolower(substr(  strrchr($_FILES['avatar']['name'], '.')  ,1));
            if (!in_array($extension_upload,$extensions_valides) )
            {
                    $i++;
                    $avatar_erreur3 = "Extension de l'avatar incorrecte";
            }
        }
    // on vérifie si le captcha est bon 
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $_POST["recaptcha_challenge_field"],
                                    $_POST["recaptcha_response_field"]);
     
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
    if ($i==0)
       {
    	echo'<h1>Inscription terminée</h1>';
            echo'<p>Bienvenue '.stripslashes(htmlspecialchars($_POST['pseudo'])).' vous êtes maintenant inscrit sur le forum</p>
    	<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>';
     
            //La ligne suivante sera commentée plus bas
    	$nomavatar=(!empty($_FILES['avatar']['size']))?move_avatar($_FILES['avatar']):''; 
     
            $query=$db->prepare('INSERT INTO forum_membres (membre_pseudo, membre_mdp, membre_email,             
            membre_sexe, membre_prenom, membre_avatar,
            membre_inscrit,   
            membre_derniere_visite)
            VALUES (:pseudo, :pass, :email, :msn, :website, :nomavatar, :signature, :localisation, :temps, :temps)');
    	$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
    	$query->bindValue(':pass', $pass, PDO::PARAM_INT);
    	$query->bindValue(':email', $email, PDO::PARAM_STR);
    	$query->bindValue(':prenom', $msn, PDO::PARAM_STR);
    	$query->bindValue(':sexe', $website, PDO::PARAM_STR);
    	$query->bindValue(':nomavatar', $nomavatar, PDO::PARAM_STR);
    	$query->bindValue(':temps', $temps, PDO::PARAM_INT);
            $query->execute();
     
    	//Et on définit les variables de sessions
            $_SESSION['pseudo'] = $pseudo;
            $_SESSION['id'] = $db->lastInsertId(); ;
            $_SESSION['level'] = 2;
            $query->CloseCursor();
        }
        else
        {
            echo'<h1>Inscription interrompue</h1>';
            echo'<p>Une ou plusieurs erreurs se sont produites pendant l incription</p>';
            echo'<p>'.$i.' erreur(s)</p>';
            echo'<p>'.$pseudo_erreur1.'</p>';
            echo'<p>'.$pseudo_erreur2.'</p>';
            echo'<p>'.$mdp_erreur.'</p>';
            echo'<p>'.$email_erreur1.'</p>';
            echo'<p>'.$email_erreur2.'</p>';
            echo'<p>'.$prenom_erreur.'</p>';
            echo'<p>'.$sexe_erreur.'</p>';
            echo'<p>'.$avatar_erreur.'</p>';
            echo'<p>'.$avatar_erreur1.'</p>';
            echo'<p>'.$avatar_erreur2.'</p>';
            echo'<p>'.$avatar_erreur3.'</p>';
     
            echo'<p>Cliquez <a href="./register.php">ici</a> pour recommencer</p>';
        }
    }
     
    ?>
    merci de m'aider a faire cette page

  10. #10
    Membre éprouvé Avatar de redoran
    Homme Profil pro
    Développeur-Amateur
    Inscrit en
    Juin 2010
    Messages
    1 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur-Amateur
    Secteur : Santé

    Informations forums :
    Inscription : Juin 2010
    Messages : 1 346
    Points : 1 031
    Points
    1 031
    Par défaut
    Salam ;
    $query->bindValue(':pseudo',$pseudo, PDO:: PARAM_STR);
    de préférence faut utilisé bindparam c'est plus puissant que bindvalue ( la petite sœur de bindparam).
    $query=$db->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
    apparemment je voie pas d'erreur sauf peut étre le faite d’écrire
    forum_membres , membre_pseudo
    peut étre que le PDO ne supporte pas !!! essaye de changer les champs en simple : forum et pseudo. et regarde le resultat.
    Nb: pour le contrôle des champs en plus de ton contrôle par js ajoute un autre contrôle avec du php en cas ou l'utilisateur désactive le js

    http://www.developpez.net/forums/d11...variable-post/ si sa peut t'aider pour le contrôle par php.

  11. #11
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    bonjour, j'ai refais la page

    http://leprojet.legtux.org/membre-inscription.html

    mais tout les echos se trouve en bas hors il ne devrait pas les mettres

    je voudrais qu'on puisse s'inscrire et qui mettent les champs obligatoire

    on m'a dit de vérifie chaque champ avec !empty(ton champ) ça ira. Il faudra par contre sécuriser (au moins avec htmlspecialchars() ) avant d'enregistrer dans la BDD.

    es ce que vous pouvez m'aidé a finir mon formulaire inscription avec les champs obligatoires pseudo, mdp, sexe, date de naissance, mail et le captcha

    Et les autres champs ne sont pas obligatoire mais néaumois il faut mettre un code pour juste vérifier s'il y a bien remplis ou coché

    et s'il ne met ou il oublie de mettre un champs là on affiché l'écho sur la même page

    et pour l'avatar sera par default selon leurs sexes

    voilà le code modifié :

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    <?php
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
    require_once(DIR_INCLUDE . '/pdo.inc.php');
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
     
    if (empty($_POST['pseudo'])) // Si on la variable est vide, on peut considérer qu'on est sur la page de formulaire
     
    {
    	// ici on affiche ton formulaire
     
    ?>
    <script type="text/javascript">
    var RecaptchaOptions = { theme : 'custom', custom_theme_widget: 'recaptcha_widget', lang : 'fr' };
    </script>
     
    <h1>Inscription au site</h1>
    <p style="text-align: center;"><strong>Vous devez remplir touts les champs avant de soumettre le formulaire.</strong></p>
    <form method="post" action="<?php echo getLienModule('membre', 'inscription'); ?>">
    <div id="tooltip"></div>
    <p><label for="pseudo">Nom d'utilisateur :</label> <input type="text" name="pseudo" id="pseudo" onkeyup="verifPseudo(this.value)" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier votre nom d'utilisateur après l'inscription." /> <span class="boxVerif" id="pseudobox"></span></p>
     
    <p><label for="password">Mot de passe :</label><input type="password" name="password" id="password" /></p>
     
    <p><label for="confirm">Confirmer le mot de passe :</label><input type="password" name="confirm_mdp" id="confirm" /></p>
     
    <p><label for="email">Votre adresse courriel :</label> <input type="text" name="email" id="email" onkeyup="verifEmail(this.value)" /> <span class="boxVerif" id="emailbox"></span></p>
     
    <p><label for="mailyes">Rendre votre adresse courriel publique ?</label> <input type="radio" name="mail" id="mailyes" value="oui" /> <label for="mailyes" style="float: none; font-weight: normal;">Oui</label>
    <input type="radio" name="mail" id="mailno" value="non" checked="checked" /> <label for="mailno" style="float: none; font-weight: normal;">Non</label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous pouvez changez ce paramètre à tout moment dans votre profil." /></p>
     
    <p><br /><label for="prenom">Votre prénom :</label> <input type="text" name="prenom" id="prenom" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label>Date de naissance :</label>
    <select name="dateN[0]" id="date">
    <?php for($i=1;$i<=31;$i++)
    {
    	 if($i < 10)
       $i = "0" . $i;
     
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
     
    ?>
    </select> / <select name="dateN[1]">
    <?php for($i = 1; $i <= 12; $i++)
    {
    	$months = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
    	echo "\n<option value='".$i."'>".$months[$i-1]."</option>";
    }
     
    ?></select> / <select name="dateN[2]">
    <?php for($i=1940;$i<=date("Y");$i++)
    {
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
    ?>
    </select>
    <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." />
    </p>
     
    <p><label>Votre sexe :</label><input type="radio" name="sexe" value="homme" id="homme" /><label for="homme" style="float: none;"><img src="../images/male.png" alt="Homme" /></label>&nbsp;&nbsp;&nbsp;<input type="radio" name="sexe" value="femme" id="femme" /><label for="femme" style="float: none;"><img src="../images/female.png" alt="Femme" /></label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label for="avatar">Avatar (facultatif) :</label><input type="file" name="avatar" id="avatar" />&nbsp;(Taille maximale : 10 ko)</p>
     
    <p><label>&nbsp;</label><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter" style="float: none;">Oui, je désire m'abonner à l'infolettre</label></p>
     
    <?php // Recaptcha
    	$publickey = '6LdiAskSAAAAAPkrlIzLRZ8dHpeNjMI3Csrs6uwr';
    ?>
    <div id="recaptcha_widget" style="display:none; margin-left: 230px;">
       <div id="recaptcha_image"></div>
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Veuillez réessayer.</div>
     
       <span class="recaptcha_only_if_image"><label for="recaptcha_response_field" style="float: none;">Veuillez recopier les mots ci-dessus :</label></span>
       <span style="vertical-align: middle; display: inline-block;">
    	   <a href="javascript:Recaptcha.reload()"><img src="../images/refresh.png" alt="" /></a>
    	   <a href="javascript:Recaptcha.showhelp()"><img src="../images/help.png" alt="" /></a>
       </span>
       <br />
     
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" />
     
     </div>
     
     <script type="text/javascript"
        src="http://www.google.com/recaptcha/api/challenge?k=<?php echo $publickey; ?>">
     </script>
     <noscript>
       <iframe src="http://www.google.com/recaptcha/api/noscript?k=<?php echo $publickey; ?>"
            height="300" width="500" frameborder="0"></iframe><br /><label>&nbsp;</label>
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
       <input type="hidden" name="recaptcha_response_field"
            value="manual_challenge" />
     </noscript>
    <br />
    <br />
    <label>&nbsp;</label><input type="submit" value="S'inscrire" OnClick="javascript:if(!control_form()) return false;" />
    </form>
    	<?php	  // fin du formulaire et on ferme la condition pour le traitement + un méssage en disant veuillez vérifié dans votre boîte de mail afin de validé de validé votre inscription 
    } 
     
     //On est dans le cas traitement
    {
        $pseudo_erreur1 = NULL;
        $pseudo_erreur2 = NULL;
        $mdp_erreur = NULL;
        $email_erreur1 = NULL;
        $email_erreur2 = NULL;
        $prenom_erreur = NULL;
        $sexe_erreur = NULL;
        $avatar_erreur = NULL;
        $avatar_erreur1 = NULL;
        $avatar_erreur2 = NULL;
        $avatar_erreur3 = NULL;
    //On récupère les variables
        $i = 0;
        $temps = time(); 
        $pseudo=$_POST['pseudo'];
        $prenom = $_POST['prenom'];
        $email = $_POST['email'];
        $sexe = $_POST['sexe'];
        $pass = md5($_POST['password']);
        $confirm = md5($_POST['confirm']);
     
        //Vérification du pseudo
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
        $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
        $query->execute();
        $pseudo_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
        if(!$pseudo_free)
        {
            $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre";
            $i++;
        }
     
        if (strlen($pseudo) < 3 || strlen($pseudo) > 15)
        {
            $pseudo_erreur2 = "Votre pseudo est soit trop grand, soit trop petit";
            $i++;
        }
     
        //Vérification du mdp
        if ($pass != $confirm || empty($confirm) || empty($pass))
        {
            $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent, ou sont vides";
            $i++;
        }
     
    $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
    $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
    $query->execute();
    $pseudo_free=($query->fetchColumn()==0)?1:0;
     
    //Vérification de l'adresse email
     
        //Il faut que l'adresse email n'ait jamais été utilisée
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_email =:mail');
        $query->bindValue(':mail',$email, PDO::PARAM_STR);
        $query->execute();
        $mail_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
     
        if(!$mail_free)
        {
            $email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
            $i++;
        }
        //On vérifie la forme maintenant
        if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email))
        {
            $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
            $i++;
        }
    //Vérification de l'avatar :
        if (!empty($_FILES['avatar']['size']))
        {
            //On définit les variables :
            $maxsize = 10024; //Poid de l'image
            $maxwidth = 100; //Largeur de l'image
            $maxheight = 100; //Longueur de l'image
            $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
     
            if ($_FILES['avatar']['error'] > 0)
            {
                    $avatar_erreur = "Erreur lors du transfert de l'avatar : ";
            }
            if ($_FILES['avatar']['size'] > $maxsize)
            {
                    $i++;
                    $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong>    contre <strong>".$maxsize." Octets</strong>)";
            }
     
            $image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
            if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
            {
                    $i++;
                    $avatar_erreur2 = "Image trop large ou trop longue : 
                    (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)";
            }
     
            $extension_upload = strtolower(substr(  strrchr($_FILES['avatar']['name'], '.')  ,1));
            if (!in_array($extension_upload,$extensions_valides) )
            {
                    $i++;
                    $avatar_erreur3 = "Extension de l'avatar incorrecte";
            }
        }
    // on vérifie si le captcha est bon 
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $_POST["recaptcha_challenge_field"],
                                    $_POST["recaptcha_response_field"]);
     
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
    if ($i==0)
       {
    	echo'<h1>Inscription terminée</h1>';
            echo'<p>Bienvenue '.stripslashes(htmlspecialchars($_POST['pseudo'])).' vous êtes maintenant inscrit sur le forum</p>
    	<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>';
     
            //La ligne suivante sera commentée plus bas
    	$nomavatar=(!empty($_FILES['avatar']['size']))?move_avatar($_FILES['avatar']):''; 
     
            $query=$pdo->prepare('INSERT INTO forum_membres (membre_pseudo, membre_mdp, membre_email,             
            membre_sexe, membre_prenom, membre_avatar,
            membre_inscrit,   
            membre_derniere_visite)
            VALUES (:pseudo, :pass, :email, :msn, :website, :nomavatar, :signature, :localisation, :temps, :temps)');
    	$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
    	$query->bindValue(':pass', $pass, PDO::PARAM_INT);
    	$query->bindValue(':email', $email, PDO::PARAM_STR);
    	$query->bindValue(':prenom', $msn, PDO::PARAM_STR);
    	$query->bindValue(':sexe', $website, PDO::PARAM_STR);
    	$query->bindValue(':nomavatar', $nomavatar, PDO::PARAM_STR);
    	$query->bindValue(':temps', $temps, PDO::PARAM_INT);
            $query->execute();
     
    	//Et on définit les variables de sessions
            $_SESSION['pseudo'] = $pseudo;
            $_SESSION['id'] = $db->lastInsertId(); ;
            $_SESSION['level'] = 2;
            $query->CloseCursor();
        }
        else
        {
            echo'<h1>Inscription interrompue</h1>';
            echo'<br>Une ou plusieurs erreurs se sont produites pendant l\'incription<br>';
            echo'<br>'.$i.' erreur(s)';
            echo'<br>'.$pseudo_erreur1.'';
            echo'<br>'.$pseudo_erreur2.'';
            echo'<br>'.$mdp_erreur.'';
            echo'<br>'.$email_erreur1.'';
            echo'<br>'.$email_erreur2.'';
            echo'<br>'.$prenom_erreur.'';
            echo'<br>'.$sexe_erreur.'';
            echo'<br>'.$avatar_erreur.'';
            echo'<br>'.$avatar_erreur1.'';
            echo'<br>'.$avatar_erreur2.'';
            echo'<br>'.$avatar_erreur3.'';
     
            echo'<p>Cliquez <a href="./register.php">ici</a> pour recommencer</p>';
        }
    }
     
    ?>

  12. #12
    Invité
    Invité(e)
    Par défaut
    Bonjour,
    un points qui m'inquiéte...
    tu utilises $I pour tes boucles (FOR)
    et aprés tu fini par if ($I==0)
    Oui tu le remets a 0 mais dans une condition non valide
    si premier affichage !
    Donc tu tombes sur le ELSE et ça affiche

  13. #13
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    je dois mettre la valeur 0 hors du if afin qu'il n'affiche pas dans la même page

    et comment on peut enregistré un membre dans la base sql

    si tu peut m'aidé a faire enfin pas tout mais le debut

    car moi quand j'enregistres il n'enregistre pas si tu peut regarder pour me dire

    merci de ton aide

  14. #14
    Invité
    Invité(e)
    Par défaut
    Pas de probléme je vais te faire ça,
    Seulement postes ici la derniére mouture de ton PHP
    Compléte sauf les includes si ils ne sont pas importants.
    (Reposte même si la moture est parmis les messages .. )

  15. #15
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    merci je te remets tout le code de cette page :

    j'efface le le lien de mon site

    donc je vais te redire ceux que je voudrais faire afin d'être claire et que tu sois courrant pour ne pas revenir a chaque fois

    je veux que le membre remplise ces champs qui seront obligatoire :

    1. Nom d'utilisateur :
    2. Mot de passe :
    3. Confirmer le mot de passe :
    4. Votre adresse courriel :
    5. Votre prénom :
    6. Date de naissance :
    7. Votre sexe :
    8. captcha :


    et les autres champs qui ne sont pas obligatoire mais qui seront comme même obligé d'enregistré dans la base sql

    1. Rendre votre adresse courriel publique ?
    2. Avatar (facultatif) :


    et pour ceux qui concerne l'avatar, il faudra sûrement remodifier le code du traitement de l'avatar selon leurs sexes car j'ai mis 2 avatars par défault 1 pour les hommes et 1 pour les femmes donc il faut dire dans le traitement si un membre coche l'image masculin il vas avoir un avatar bleu et pour les femmes un avatar par default rose

    et pour le traitement rendre l'email visible j'ai laissé par défault coché non mais il peut coché oui s'il veut qu'on voit ssur son profil et là il faudra mettre un petit code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // caché l'émail dans le profil
    if($_POST['mail'] == "oui")
    {
    $mc = 0;
    }
    if($_POST['mail'] == "non")
    {
    $mc = 1;
    }
    et bien sur je te met un bout de code de mon ancien version ou j'ai codé car comme celà ça sera fait si on peut le mettre tout de suite au lieu d'attentre de le mettre après

    ca veux dire quand un membre s'inscrit il recevont un message sur leurs boîte de mail pour validé le lien grace a la clé

    je te met ceux que j'ai fais pour que tu puisses mettre tout dans ma nouvelle page :

    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
    //mail dans cette condition
    if ($i == 0) // Si i est vide, il n'y a pas d'erreur
    {
    ///!\ A mettre avant le mysql_query('INSERT INTO ...)
    $clef = NULL;
    for($i=0;$i<31;$i++){ // clef de longeur de 30 caractéres
     $clef .= rand(0,99);
    }
    //Ici le mysql_query('INSERT INTO...')
    //On balance le tout dans notre table
           mysql_query('
    INSERT INTO forum_membres(membre_pseudo, membre_mdp, membre_email, membre_avatar, membre_newsletter, membre_inscrit, membre_derniere_visite,membre_clef,membre_active,membre_email_cache,membre_date_de_naissance)
    VALUES("'.$pseudo.'" , "'.$pass.'" , "'.$email.'" , "'.$nomavatar.'" ,"'.$mn.'","'.$signature.'" , "'.$localisation.'" , "'.$temps.'" ,"'.$temps.'" , "'.$clef.'" , "0", "'.$mc.'","'.$dateN[2].'-'.$dateN[1].'-'.$dateN[0] .'" ) ') or die(mysql_error());
     
     
      mysql_query('INSERT INTO forum_mp_conf VALUES("","'.mysql_insert_id().'","30","")');
       $id_event = rand(0,47895623);
      		mysql_query('INSERT INTO calendrier VALUES("","'.$dateN[2].'" ,"'.$dateN[1].'","0","'.$id_event.'")');
    		mysql_query('INSERT INTO evenements VALUES("' . $id_event . '","Anniversaire de ' . $pseudo . '","")');
     
    //Variable à changer si le nom de la variable n'est pas correcte
     $sujet = 'Inscription sur mon forum !';
    $message = "
    Bienvenue $pseudo , vous vennez de vous enregistrer sur notre forum avec le pseudo $pseudo.
    Afin de pouvoir utiliser votre compte nous vous demandons de bien vouloir cliquez sur le lien ci dessous pour nous prouvez que l'email du compte est bien correct .
    http://le.coffre.free.fr/verif_inscription?pseudo=$pseudo&validation=$clef
     
    /!\ Attention ce mail est automatique merci de ne pas repondre au méssage
    ";
     
      mail($email,$sujet,$message);
    }
     
     
            //Et on met un message
           echo '<p class="cadre_centrer">L\'inscription à notre forum est presque terminé . Un mail vous a été envoyer pour verifier la validité de votre adresse , merci de consulté ce mail et cliquez sur le lien fourni dedant pour activer votre compte !Cliquez <a href="./index.php">ici</a> pour revenir à l acceuil</p>'; 
     
    }
    voilà le code entier de ma page :

    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    <?php
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
    require_once(DIR_INCLUDE . '/pdo.inc.php');
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
     
    if (empty($_POST['pseudo'])) // Si on la variable est vide, on peut considérer qu'on est sur la page de formulaire
     
    {
    	// ici on affiche ton formulaire
     
    ?>
    <script type="text/javascript">
    var RecaptchaOptions = { theme : 'custom', custom_theme_widget: 'recaptcha_widget', lang : 'fr' };
    </script>
     
    <h1>Inscription au site</h1>
    <p style="text-align: center;"><strong>Vous devez remplir touts les champs avant de soumettre le formulaire.</strong></p>
    <form method="post" action="<?php echo getLienModule('membre', 'inscription'); ?>">
    <div id="tooltip"></div>
    <p><label for="pseudo">Nom d'utilisateur :</label> <input type="text" name="pseudo" id="pseudo" onkeyup="verifPseudo(this.value)" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier votre nom d'utilisateur après l'inscription." /> <span class="boxVerif" id="pseudobox"></span></p>
     
    <p><label for="password">Mot de passe :</label><input type="password" name="password" id="password" /></p>
     
    <p><label for="confirm">Confirmer le mot de passe :</label><input type="password" name="confirm_mdp" id="confirm" /></p>
     
    <p><label for="email">Votre adresse courriel :</label> <input type="text" name="email" id="email" onkeyup="verifEmail(this.value)" /> <span class="boxVerif" id="emailbox"></span></p>
     
    <p><label for="mailyes">Rendre votre adresse courriel publique ?</label> <input type="radio" name="mail" id="mailyes" value="oui" /> <label for="mailyes" style="float: none; font-weight: normal;">Oui</label>
    <input type="radio" name="mail" id="mailno" value="non" checked="checked" /> <label for="mailno" style="float: none; font-weight: normal;">Non</label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous pouvez changez ce paramètre à tout moment dans votre profil." /></p>
     
    <p><br /><label for="prenom">Votre prénom :</label> <input type="text" name="prenom" id="prenom" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label>Date de naissance :</label>
    <select name="dateN[0]" id="date">
    <?php for($i=1;$i<=31;$i++)
    {
    	 if($i < 10)
       $i = "0" . $i;
     
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
     
    ?>
    </select> / <select name="dateN[1]">
    <?php for($i = 1; $i <= 12; $i++)
    {
    	$months = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
    	echo "\n<option value='".$i."'>".$months[$i-1]."</option>";
    }
     
    ?></select> / <select name="dateN[2]">
    <?php for($i=1940;$i<=date("Y");$i++)
    {
    	echo "\n<option value='".$i."'>".$i."</option>";
    }
    ?>
    </select>
    <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." />
    </p>
     
    <p><label>Votre sexe :</label><input type="radio" name="sexe" value="homme" id="homme" /><label for="homme" style="float: none;"><img src="../images/male.png" alt="Homme" /></label>&nbsp;&nbsp;&nbsp;<input type="radio" name="sexe" value="femme" id="femme" /><label for="femme" style="float: none;"><img src="../images/female.png" alt="Femme" /></label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label for="avatar">Avatar (facultatif) :</label><input type="file" name="avatar" id="avatar" />&nbsp;(Taille maximale : 10 ko)</p>
     
    <p><label>&nbsp;</label><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter" style="float: none;">Oui, je désire m'abonner à l'infolettre</label></p>
     
    <?php // Recaptcha
    	$publickey = '6LdiAskSAAAAAPkrlIzLRZ8dHpeNjMI3Csrs6uwr';
    ?>
    <div id="recaptcha_widget" style="display:none; margin-left: 230px;">
       <div id="recaptcha_image"></div>
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Veuillez réessayer.</div>
     
       <span class="recaptcha_only_if_image"><label for="recaptcha_response_field" style="float: none;">Veuillez recopier les mots ci-dessus :</label></span>
       <span style="vertical-align: middle; display: inline-block;">
    	   <a href="javascript:Recaptcha.reload()"><img src="../images/refresh.png" alt="" /></a>
    	   <a href="javascript:Recaptcha.showhelp()"><img src="../images/help.png" alt="" /></a>
       </span>
       <br />
     
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" />
     
     </div>
     
     <script type="text/javascript"
        src="http://www.google.com/recaptcha/api/challenge?k=<?php echo $publickey; ?>">
     </script>
     <noscript>
       <iframe src="http://www.google.com/recaptcha/api/noscript?k=<?php echo $publickey; ?>"
            height="300" width="500" frameborder="0"></iframe><br /><label>&nbsp;</label>
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
       <input type="hidden" name="recaptcha_response_field"
            value="manual_challenge" />
     </noscript>
    <br />
    <br />
    <label>&nbsp;</label><input type="submit" value="S'inscrire" OnClick="javascript:if(!control_form()) return false;" />
    </form>
    	<?php	  // fin du formulaire et on ferme la condition pour le traitement + un méssage en disant veuillez vérifié dans votre boîte de mail afin de validé de validé votre inscription 
    } 
     
     //On est dans le cas traitement
    {
        $pseudo_erreur1 = NULL;
        $pseudo_erreur2 = NULL;
        $mdp_erreur = NULL;
        $email_erreur1 = NULL;
        $email_erreur2 = NULL;
        $prenom_erreur = NULL;
        $sexe_erreur = NULL;
        $avatar_erreur = NULL;
        $avatar_erreur1 = NULL;
        $avatar_erreur2 = NULL;
        $avatar_erreur3 = NULL;
    //On récupère les variables
        $i = 0;
        $temps = time(); 
        $pseudo=$_POST['pseudo'];
        $prenom = $_POST['prenom'];
        $email = $_POST['email'];
        $sexe = $_POST['sexe'];
        $pass = md5($_POST['password']);
        $confirm = md5($_POST['confirm']);
     
        //Vérification du pseudo
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
        $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
        $query->execute();
        $pseudo_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
        if(!$pseudo_free)
        {
            $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre";
            $i++;
        }
     
        if (strlen($pseudo) < 3 || strlen($pseudo) > 15)
        {
            $pseudo_erreur2 = "Votre pseudo est soit trop grand, soit trop petit";
            $i++;
        }
     
        //Vérification du mdp
        if ($pass != $confirm || empty($confirm) || empty($pass))
        {
            $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent, ou sont vides";
            $i++;
        }
     
    $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
    $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
    $query->execute();
    $pseudo_free=($query->fetchColumn()==0)?1:0;
     
    //Vérification de l'adresse email
     
        //Il faut que l'adresse email n'ait jamais été utilisée
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_email =:mail');
        $query->bindValue(':mail',$email, PDO::PARAM_STR);
        $query->execute();
        $mail_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
     
        if(!$mail_free)
        {
            $email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
            $i++;
        }
        //On vérifie la forme maintenant
        if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email))
        {
            $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
            $i++;
        }
    //Vérification de l'avatar :
        if (!empty($_FILES['avatar']['size']))
        {
            //On définit les variables :
            $maxsize = 10024; //Poid de l'image
            $maxwidth = 100; //Largeur de l'image
            $maxheight = 100; //Longueur de l'image
            $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
     
            if ($_FILES['avatar']['error'] > 0)
            {
                    $avatar_erreur = "Erreur lors du transfert de l'avatar : ";
            }
            if ($_FILES['avatar']['size'] > $maxsize)
            {
                    $i++;
                    $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong>    contre <strong>".$maxsize." Octets</strong>)";
            }
     
            $image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
            if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
            {
                    $i++;
                    $avatar_erreur2 = "Image trop large ou trop longue : 
                    (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)";
            }
     
            $extension_upload = strtolower(substr(  strrchr($_FILES['avatar']['name'], '.')  ,1));
            if (!in_array($extension_upload,$extensions_valides) )
            {
                    $i++;
                    $avatar_erreur3 = "Extension de l'avatar incorrecte";
            }
        }
    // on vérifie si le captcha est bon 
    $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
    $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $_POST["recaptcha_challenge_field"],
                                    $_POST["recaptcha_response_field"]);
     
    if (!$resp->is_valid)
    {
        // Le captcha EST INVALIDE !!
    }
    if ($i==0)
       {
    	echo'<h1>Inscription terminée</h1>';
            echo'<p>Bienvenue '.stripslashes(htmlspecialchars($_POST['pseudo'])).' vous êtes maintenant inscrit sur le forum</p>
    	<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>';
     
            //La ligne suivante sera commentée plus bas
    	$nomavatar=(!empty($_FILES['avatar']['size']))?move_avatar($_FILES['avatar']):''; 
     
            $query=$pdo->prepare('INSERT INTO forum_membres (membre_pseudo, membre_mdp, membre_email,             
            membre_sexe, membre_prenom, membre_avatar,
            membre_inscrit,   
            membre_derniere_visite)
            VALUES (:pseudo, :pass, :email, :msn, :website, :nomavatar, :signature, :localisation, :temps, :temps)');
    	$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
    	$query->bindValue(':pass', $pass, PDO::PARAM_INT);
    	$query->bindValue(':email', $email, PDO::PARAM_STR);
    	$query->bindValue(':prenom', $msn, PDO::PARAM_STR);
    	$query->bindValue(':sexe', $website, PDO::PARAM_STR);
    	$query->bindValue(':nomavatar', $nomavatar, PDO::PARAM_STR);
    	$query->bindValue(':temps', $temps, PDO::PARAM_INT);
            $query->execute();
     
    	//Et on définit les variables de sessions
            $_SESSION['pseudo'] = $pseudo;
            $_SESSION['id'] = $db->lastInsertId(); ;
            $_SESSION['level'] = 2;
            $query->CloseCursor();
        }
        else
        {
            echo'<h1>Inscription interrompue</h1>';
            echo'<br>Une ou plusieurs erreurs se sont produites pendant l\'incription<br>';
            echo'<br>'.$i.' erreur(s)';
            echo'<br>'.$pseudo_erreur1.'';
            echo'<br>'.$pseudo_erreur2.'';
            echo'<br>'.$mdp_erreur.'';
            echo'<br>'.$email_erreur1.'';
            echo'<br>'.$email_erreur2.'';
            echo'<br>'.$prenom_erreur.'';
            echo'<br>'.$sexe_erreur.'';
            echo'<br>'.$avatar_erreur.'';
            echo'<br>'.$avatar_erreur1.'';
            echo'<br>'.$avatar_erreur2.'';
            echo'<br>'.$avatar_erreur3.'';
     
            echo'<p>Cliquez <a href="./register.php">ici</a> pour recommencer</p>';
        }
    }
     
    ?>
    Et si tu peux mettres tout les echos quand il y aura une érreur ou bien pour dire avant de terminer vos inscriptions, valider le lien qui se trouve dans la boite de mail cette phrase là il faudra l'affiché sur une seuil page en haut du formulaire ou sur index je verrais ca au lieu de les afficher sur une nouvelle page

    merci de ton aide

  16. #16
    Invité
    Invité(e)
    Par défaut
    Voila je réédites,
    Tout marche bien que je ne puisses pas tout controler
    j'ais du limiter les champs en INSER, car c'était nimporte quoi
    Pour moi ça devrais aller testes et dis moi ICI
    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
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
    161
    162
    163
    164
    165
    166
    167
    168
    169
    170
    171
    172
    173
    174
    175
    176
    177
    178
    179
    180
    181
    182
    183
    184
    185
    186
    187
    188
    189
    190
    191
    192
    193
    194
    195
    196
    197
    198
    199
    200
    201
    202
    203
    204
    205
    206
    207
    208
    209
    210
    211
    212
    213
    214
    215
    216
    217
    218
    219
    220
    221
    222
    223
    224
    225
    226
    227
    228
    229
    230
    231
    232
    233
    234
    235
    236
    237
    238
    239
    240
    241
    242
    243
    244
    245
    246
    247
    248
    249
    250
    251
    252
    253
    254
    255
    256
    257
    258
    259
    260
    261
    262
    263
    264
    265
    266
    267
    268
    269
    270
    271
    272
    273
    274
    275
    276
    277
    278
    279
    280
    281
     
    <?php
    $pseudo = (isset($_POST['pseudo'])) ? $_POST['pseudo'] : '';
    $mail = (isset($_POST['mail'])) ? $_POST['mail'] : '';
    $prenom = (isset($_POST['prenom'])) ? $_POST['prenom'] : '';
    $email = (isset($_POST['email'])) ? $_POST['email'] : '';
    $sexe = (isset($_POST['sexe'])) ? $_POST['sexe'] : '';
    $pass = (isset($_POST['password'])) ? md5($_POST['password']) : '';
    $confirm = (isset($_POST['confirm_mdp'])) ? md5($_POST['confirm_mdp']) : '';
    $recaptcha_challenge_field = (isset($_POST['recaptcha_challenge_field'])) ? $_POST['recaptcha_challenge_field'] : '';
    $recaptcha_response_field = (isset($_POST['recaptcha_response_field'])) ? $_POST['recaptcha_response_field'] : '';
    $i = 0;
     
    if($mail == "oui")
    {
    $mc = 0;
    }
    if($mail!= "oui")
    {
    $mc = 1;
    }
    require_once(DIR_INCLUDE . '/form.inc.php');
    require_once(DIR_INCLUDE . '/recaptchalib.php');
    require_once(DIR_INCLUDE . '/pdo.inc.php');
    setPageTitle('Inscription au site', true);
    auth(VISITEUR,true,true);
    if ($pseudo=="") // Si on la variable est vide, on peut considérer qu'on est sur la page de formulaire
    {
    	// ici on affiche ton formulaire
     
    ?>
    <script type="text/javascript">
    var RecaptchaOptions = { theme : 'custom', custom_theme_widget: 'recaptcha_widget', lang : 'fr' };
    </script>
     
    <h1>Inscription au site</h1>
    <p style="text-align: center;"><strong>Vous devez remplir touts les champs avant de soumettre le formulaire.</strong></p>
    <form method="post" action="<?php echo getLienModule('membre', 'inscription'); ?>">
    <div id="tooltip"></div>
    <p><label for="pseudo">Nom d'utilisateur :</label> <input type="text" name="pseudo" id="pseudo" onkeyup="verifPseudo(this.value)" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier votre nom d'utilisateur après l'inscription." /> <span class="boxVerif" id="pseudobox"></span></p>
     
    <p><label for="password">Mot de passe :</label><input type="password" name="password" id="password" /></p>
     
    <p><label for="confirm">Confirmer le mot de passe :</label><input type="password" name="confirm_mdp" id="confirm" /></p>
     
    <p><label for="email">Votre adresse courriel :</label> <input type="text" name="email" id="email" onkeyup="verifEmail(this.value)" /> <span class="boxVerif" id="emailbox"></span></p>
     
    <p><label for="mailyes">Rendre votre adresse courriel publique ?</label> <input type="radio" name="mail" id="mailyes" value="oui" /> <label for="mailyes" style="float: none; font-weight: normal;">Oui</label>
    <input type="radio" name="mail" id="mailno" value="non" checked="checked" /> <label for="mailno" style="float: none; font-weight: normal;">Non</label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous pouvez changez ce paramètre à tout moment dans votre profil." /></p>
     
    <p><br /><label for="prenom">Votre prénom :</label> <input type="text" name="prenom" id="prenom" /> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label>Date de naissance :</label>
    <select name="dateN[0]" id="date">
    <?php
    for($a=1;$a<=31;$a++)
    {
      if($a < 10)
       $a = "0" . $a;
     
     echo "\n<option value='".$a."'>".$a."</option>";
    }
     
    ?>
    </select> / <select name="dateN[1]">
    <?php
    for($a = 1; $a <= 12; $a++)
    {
    	$months = array('janvier', 'février', 'mars', 'avril', 'mai', 'juin', 'août', 'septembre', 'octobre', 'novembre', 'décembre');
     echo "\n<option value='".$a."'>".$months[$a-1]."</option>";
    }
    ?>
    </select> / <select name="dateN[2]">
    <?php
    for($a=1940;$a<=date("Y");$a++)
    {
     echo "\n<option value='".$a."'>".$a."</option>";
    }
    ?>
    </select>
    <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." />
    </p>
     
    <p><label>Votre sexe :</label><input type="radio" name="sexe" value="homme" id="homme" /><label for="homme" style="float: none;"><img src="../images/male.png" alt="Homme" /></label>&nbsp;&nbsp;&nbsp;<input type="radio" name="sexe" value="femme" id="femme" /><label for="femme" style="float: none;"><img src="../images/female.png" alt="Femme" /></label> <img src="../images/help.png" alt="" onmouseover="tooltip.show(this)" onmouseout="tooltip.hide(this)" title="Vous ne pouvez pas modifier ce champ après l'inscription." /></p>
     
    <p><label for="avatar">Avatar (facultatif) :</label><input type="file" name="avatar" id="avatar" />&nbsp;(Taille maximale : 10 ko)</p>
     
    <p><label>&nbsp;</label><input type="checkbox" name="newsletter" id="newsletter" /> <label for="newsletter" style="float: none;">Oui, je désire m'abonner à l'infolettre</label></p>
     
    <?php // Recaptcha
    	$publickey = '6LdiAskSAAAAAPkrlIzLRZ8dHpeNjMI3Csrs6uwr';
    ?>
    <div id="recaptcha_widget" style="display:none; margin-left: 230px;">
       <div id="recaptcha_image"></div>
       <div class="recaptcha_only_if_incorrect_sol" style="color:red">Incorrect. Veuillez réessayer.</div>
     
       <span class="recaptcha_only_if_image"><label for="recaptcha_response_field" style="float: none;">Veuillez recopier les mots ci-dessus :</label></span>
       <span style="vertical-align: middle; display: inline-block;">
    	   <a href="javascript:Recaptcha.reload()"><img src="../images/refresh.png" alt="" /></a>
    	   <a href="javascript:Recaptcha.showhelp()"><img src="../images/help.png" alt="" /></a>
       </span>
       <br />
     
       <input type="text" id="recaptcha_response_field" name="recaptcha_response_field" />
     
     </div>
     
     <script type="text/javascript"
        src="http://www.google.com/recaptcha/api/challenge?k=<?php echo $publickey; ?>">
     </script>
     <noscript>
       <iframe src="http://www.google.com/recaptcha/api/noscript?k=<?php echo $publickey; ?>"
            height="300" width="500" frameborder="0"></iframe><br /><label>&nbsp;</label>
       <textarea name="recaptcha_challenge_field" rows="3" cols="40"></textarea>
       <input type="hidden" name="recaptcha_response_field"
            value="manual_challenge" />
     </noscript>
    <br />
    <br />
    <label>&nbsp;</label><input type="submit" value="S'inscrire" OnClick="javascript:if(!control_form()) return false;" />
    </form>
    	<?php	  // fin du formulaire et on ferme la condition pour le traitement + un méssage en disant veuillez vérifié dans votre boîte de mail afin de validé de validé votre inscription 
    } 
     
    if ($pseudo!="") //On est dans le cas traitement
    {
        $pseudo_erreur1 = NULL;
        $pseudo_erreur2 = NULL;
        $mdp_erreur = NULL;
        $email_erreur1 = NULL;
        $email_erreur2 = NULL;
        $prenom_erreur = NULL;
        $sexe_erreur = NULL;
        $avatar_erreur = NULL;
        $avatar_erreur1 = NULL;
        $avatar_erreur2 = NULL;
        $avatar_erreur3 = NULL;
        //On récupère les variables
        $temps = time(); 
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
        $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
        $query->execute();
        $pseudo_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
        if(!$pseudo_free)
        {
            $pseudo_erreur1 = "Votre pseudo est déjà utilisé par un membre";
            $i++;
        }
     
        if (strlen($pseudo) < 3 || strlen($pseudo) > 15)
        {
            $pseudo_erreur2 = "Votre pseudo est soit trop grand, soit trop petit";
            $i++;
        }
     
        //Vérification du mdp
        if ($pass != $confirm || empty($confirm) || empty($pass))
        {
            $mdp_erreur = "Votre mot de passe et votre confirmation diffèrent, ou sont vides";
            $i++;
        }
     
    $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_pseudo =:pseudo');
    $query->bindValue(':pseudo',$pseudo, PDO::PARAM_STR);
    $query->execute();
    $pseudo_free=($query->fetchColumn()==0)?1:0;
     
    //Vérification de l'adresse email
     
        //Il faut que l'adresse email n'ait jamais été utilisée
        $query=$pdo->prepare('SELECT COUNT(*) AS nbr FROM forum_membres WHERE membre_email =:mail');
        $query->bindValue(':mail',$email, PDO::PARAM_STR);
        $query->execute();
        $mail_free=($query->fetchColumn()==0)?1:0;
        $query->CloseCursor();
     
        if(!$mail_free)
        {
            $email_erreur1 = "Votre adresse email est déjà utilisée par un membre";
            $i++;
        }
        //On vérifie la forme maintenant
        if (!preg_match("#^[a-zA-Z0-9._-]+@[a-zA-Z0-9._-]{2,}\.[a-z]{2,4}$#", $email) || empty($email))
        {
            $email_erreur2 = "Votre adresse E-Mail n'a pas un format valide";
            $i++;
        }
        //Vérification de l'avatar :
        if (!empty($_FILES['avatar']['size']))
        {
            //On définit les variables :
            $maxsize = 10024; //Poid de l'image
            $maxwidth = 100; //Largeur de l'image
            $maxheight = 100; //Longueur de l'image
            $extensions_valides = array( 'jpg' , 'jpeg' , 'gif' , 'png', 'bmp' ); //Liste des extensions valides
     
            if ($_FILES['avatar']['error'] > 0)
            {
                    $avatar_erreur = "Erreur lors du transfert de l'avatar : ";
            }
            if ($_FILES['avatar']['size'] > $maxsize)
            {
                    $i++;
                    $avatar_erreur1 = "Le fichier est trop gros : (<strong>".$_FILES['avatar']['size']." Octets</strong>    contre <strong>".$maxsize." Octets</strong>)";
            }
     
            $image_sizes = getimagesize($_FILES['avatar']['tmp_name']);
            if ($image_sizes[0] > $maxwidth OR $image_sizes[1] > $maxheight)
            {
                    $i++;
                    $avatar_erreur2 = "Image trop large ou trop longue : 
                    (<strong>".$image_sizes[0]."x".$image_sizes[1]."</strong> contre <strong>".$maxwidth."x".$maxheight."</strong>)";
            }
     
            $extension_upload = strtolower(substr(  strrchr($_FILES['avatar']['name'], '.')  ,1));
            if (!in_array($extension_upload,$extensions_valides) )
            {
                    $i++;
                    $avatar_erreur3 = "Extension de l'avatar incorrecte";
            }
        }
        // on vérifie si le captcha est bon 
        $privatekey = "6LdiAskSAAAAACtuBwMoKnSGe-ZDKRSR67X_jZy8";
        $resp = recaptcha_check_answer ($privatekey,
                                    $_SERVER["REMOTE_ADDR"],
                                    $recaptcha_challenge_field,
                                    $recaptcha_response_field);
        if (!$resp->is_valid)
         {
          // Le captcha EST INVALIDE !!
         }
    if ($i==0)
       {
    	echo'<h1>Inscription terminée</h1>';
            echo'<p>Bienvenue '.stripslashes(htmlspecialchars($pseudo)).' vous êtes maintenant inscrit sur le forum</p>
    	<p>Cliquez <a href="./index.php">ici</a> pour revenir à la page d accueil</p>';
     
            //La ligne suivante sera commentée plus bas
    	$nomavatar=(!empty($_FILES['avatar']['size']))?move_avatar($_FILES['avatar']):''; 
     
            $query=$pdo->prepare('INSERT INTO forum_membres
            (membre_pseudo, membre_mdp, membre_email,  membre_prenom, membre_sexe, membre_avatar)
            VALUES (:pseudo, :pass, :email, :prenom, :sexe, :nomavatar)');
    	$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
    	$query->bindValue(':pass', $pass, PDO::PARAM_INT);
    	$query->bindValue(':email', $email, PDO::PARAM_STR);
     $query->bindValue(':prenom', $prenom, PDO::PARAM_STR);
     $query->bindValue(':sexe', $sexe, PDO::PARAM_STR);
    	$query->bindValue(':nomavatar', $nomavatar, PDO::PARAM_STR);
     $query->execute();
     
    	//Et on définit les variables de sessions
            $_SESSION['pseudo'] = $pseudo;
            $_SESSION['id'] = $pdo->lastInsertId(); ;
            $_SESSION['level'] = 2;
            $query->CloseCursor();
     
        }
        else
        {
            echo'<h1>Inscription interrompue</h1>';
            echo'<br>Une ou plusieurs erreurs se sont produites pendant l\'incription<br>';
            echo'<br>'.$i.' erreur(s)';
            echo'<br>'.$pseudo_erreur1.'';
            echo'<br>'.$pseudo_erreur2.'';
            echo'<br>'.$mdp_erreur.'';
            echo'<br>'.$email_erreur1.'';
            echo'<br>'.$email_erreur2.'';
            echo'<br>'.$prenom_erreur.'';
            echo'<br>'.$sexe_erreur.'';
            echo'<br>'.$avatar_erreur.'';
            echo'<br>'.$avatar_erreur1.'';
            echo'<br>'.$avatar_erreur2.'';
            echo'<br>'.$avatar_erreur3.'';
     
            echo'<p>Cliquez <a href="./register.php">ici</a> pour recommencer</p>';
        }
    }
     
    ?>
    PAS DE MP pour la technique, Meci postes ici
    Dernière modification par Invité ; 01/03/2012 à 23h00.

  17. #17
    Inactif
    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    164
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 164
    Points : 0
    Points
    0
    Par défaut
    merci j'ai tester ton nouveau code mais si je mets pas la date de naissance ni prenom ni le captcha il m'enregistre comme même

  18. #18
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par mario94 Voir le message
    merci j'ai tester ton nouveau code mais si je mets pas la date de naissance ni prenom ni le captcha il m'enregistre comme même
    Sans doute, mais il te faut revoir tout ton php, en effet j'ais mis longtemps a corriger ta premiére version pour que ça marche, et que l'affichage des erreurs soit non visible a la saisie.

    En lisant tu verras que dans ton premier PHP tu mettais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
     $query=$pdo->prepare('INSERT INTO forum_membres (membre_pseudo, membre_mdp, membre_email,             
            membre_sexe, membre_prenom, membre_avatar,
            membre_inscrit,   
            membre_derniere_visite)
            VALUES (:pseudo, :pass, :email, :msn, :website, :nomavatar, :signature, :localisation, :temps, :temps)');
    	$query->bindValue(':pseudo', $pseudo, PDO::PARAM_STR);
    	$query->bindValue(':pass', $pass, PDO::PARAM_INT);
    	$query->bindValue(':email', $email, PDO::PARAM_STR);
    	$query->bindValue(':prenom', $msn, PDO::PARAM_STR);
    	$query->bindValue(':sexe', $website, PDO::PARAM_STR);
    	$query->bindValue(':nomavatar', $nomavatar, PDO::PARAM_STR);
    	$query->bindValue(':temps', $temps, PDO::PARAM_INT);
            $query->execute();
    Donc $temp ??
    et pour :sexe $website
    et pour prenom $msn !!!
    OUI ça marche mais il te faut lire ligne par ligne ta nouvelle logique ! pour tout mettre d'aplomb !
    C' est TON travail ...
    Bon courage

Discussions similaires

  1. [MySQL] erreur php sur un formulaire de mis à jour
    Par carmen256 dans le forum PHP & Base de données
    Réponses: 34
    Dernier message: 06/04/2006, 13h39
  2. [SGBD] Traitement Données Formulaire Vers BDD Mysql
    Par Thierry8 dans le forum SQL Procédural
    Réponses: 10
    Dernier message: 29/03/2006, 23h22
  3. [C#][2.0] Traitement de Formulaire (Insert / Update)
    Par softflower dans le forum ASP.NET
    Réponses: 7
    Dernier message: 17/02/2006, 13h44
  4. Réponses: 2
    Dernier message: 19/12/2005, 12h23
  5. Erreur dans un sous formulaire
    Par Didi17 dans le forum Access
    Réponses: 4
    Dernier message: 14/11/2005, 08h41

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