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

PHP & Base de données Discussion :

Ecrire des données lors d'une inscription


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 61
    Par défaut Ecrire des données lors d'une inscription
    Bonjour,

    Je suis étudiant et débutant en programmation Web : j'ai appris récemment HTML / CSS (développement Web Front End), et je commence à apprendre à dynamiser mes sites avec les langages PHP et SQL avec le SGBD MySQL.

    J'ai commencé à suivre un cours là-dessus, j'ai appris à transmettre des données via un formulaire, et à ajouter des tables dans ma base de données.

    Cependant, je cherche maintenant à ajouter de nouvelles choses dans l'une de mes tables (user), via PHP (formulaire d'inscription), j'ai regardé comment faire sur un cours.

    J'ai initialisé mes variables $pseudo, etc, ... par des espaces, mais je ne sais pas si c'est la chose à faire, et j'obtiens l'erreur suivante :

    Warning: PDOStatement::execute(): SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens in C:\wamp64\www\SiteInformatique\userRegistration.php on line 75
    Voici le code de ma PHP file : userRegistration :
    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
    <!DOCTYPE html>
    <html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" type="text/css" href="welcomeStyle.css">
        <title>Inscription</title>
    </head>
    <body>
    <img src="images/imageEncyclopedie.jpg" id="imageDebut">
    <h1>Inscription</h1>
    <a href="homePage.php">Retour</a><br><br>
    <fieldset>
        <legend>Vos coordonnées</legend>
        <form method="post" action="userPortal.php">
            <label for="Nom">Nom</label> : <input name="nom"><br/><br/>
            <label for="Prenom">Prénom</label> : <input type="name" name="prenom"><br/><br/>
            <label for="mail">Adresse mail</label> : <input type="email"><br><br>
            <label for="numRue">Numéro de rue</label> : <input type="name" name="numRue">
            <label for="nomRue">Nom de rue</label> : <input type="name" name="nomRue">
            <label for="Ville">Ville</label> : <input type="name" name="ville">
            <label for="codePostal">Code postal</label> : <input type="number" min="1" max="99"><br/><br/>
            <label for="dateNaissance">Date de naissance</label> : <input type="date"/><br><br>
            <label for="statut">Statut</label> : <select name="statut" id="situ">
                <option value="etudiant">Etudiant</option>
                <option value="passionné">Passionné</option>
                <option value="professionnel">Professionnel</option>
            </select>
        </form>
     
    </fieldset>
    <br><br><br>
    <fieldset>
        <legend>Vos identifiants</legend>
        <form action="userPortal.php" method="post">
            <label for="pseudo">Pseudo</label> : <input type="name" name="pseudo"><br><br>
            <label for="mot_de_passe">Mot de passe</label> : <input type="password" name="mot_de_passe">
    </fieldset>
    <br>
    <input type="submit" value="S'inscrire">
     
    </form>
     
    <?php
    try {
        //ON SE CONNECTE A MYSQL
        $bdd = new PDO('mysql:host=localhost;dbname=testsiteinfo;charset=utf8', 'root', '');
    } catch (Exception $e) {
        //EN CAS D'ERREUR, ON ARRETE TOUT ET ON AFFICHE UN MESSAGE D'ERREUR
        die('Erreur : ' . $e->getMessage());
    }
     
    $req = $bdd->prepare('INSERT INTO user(pseudo, Nom, Prenom, mail, numRue, nomRue, Ville, codePostal, dateNaissance, statut) VALUES(:pseudo, :Nom, Prenom, :mail, :numRue, :nomRue, :Ville, :codePostal, :dateNaissance, :statut)');
     
    $pseudo = ' ';
    $nom = ' ';
    $prenom = ' ';
    $mail = ' ';
    $numRue = ' ';
    $nomRue = ' ';
    $Ville = ' ';
    $codePostal = ' ';
    $dateNaissance = ' ';
    $statut = ' ';
     
    $req->execute(array(
        'pseudo' => $pseudo,
        'Nom' => $nom,
        'Prenom' => $prenom,
        'mail' => $mail,
        'numRue' => $numRue,
        'nomRue' => $nomRue,
        'Ville' => $Ville,
        'codePostal' => $codePostal,
        'dateNaissance' => $dateNaissance,
        'statut' => $statut
    ));
    ?>
     
     
    </body>
    </html>
    Auriez-vous une idée concernant cette erreur et comment faire pour obtenir un formulaire d'inscription ?


    En vous remerciant par avance pour votre réponse,

    Bien cordialement

  2. #2
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2019
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2019
    Messages : 61
    Par défaut
    C'est bon j'ai résolu mon problème, il fallait bien surveiller les arguments, en appelant les $_POST['(valeur du name)'], et prendre en compte dans un seul form, tous les arguments.

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 23/04/2017, 18h56
  2. Réponses: 3
    Dernier message: 15/11/2016, 17h19
  3. [XL-2010] Formatage des données lors d'une reunification
    Par Fackem dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 17/08/2014, 12h07
  4. [XL-2010] faire apparaître des données lors du survol d'une forme
    Par onicaloc dans le forum Excel
    Réponses: 4
    Dernier message: 10/03/2014, 09h52
  5. Insérer des données Excel dans une base Access ?
    Par MaTHieU_ dans le forum Access
    Réponses: 3
    Dernier message: 22/06/2005, 15h11

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