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 :

Requête qui ne s'exécute pas. [MySQL]


Sujet :

PHP & Base de données

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2021
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2021
    Messages : 16
    Par défaut Requête qui ne s'exécute pas.
    Bon je ne comprends pas trop, l'erreur est surement évidente mais je ne la discerne pas... j'essaye juste de rentrer un formulaire en base de données mais cela ne fonctionne pas. Je pense qu'un oeil extérieur trouvera le soucis en quelques secondes donc je fais appel à vous !

    Voici mon form.php :

    Code html : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    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
     
    <html>
    <form class="needs-validation" novalidate>
      <div class="form-row">
        <div class="col-md-4 mb-3">
          <label for="validationCustom01">Prénom</label>
          <input type="text" class="form-control" id="validationCustom01" placeholder="Karim" name="prenom" value="" required>
          <div class="valid-feedback">
            Vérifié
          </div>
        </div>
        <div class="col-md-4 mb-3">
          <label for="validationCustom02">Nom de famille</label>
          <input type="text" class="form-control" id="validationCustom02" placeholder="Benzema" name="nom" value="" required>
          <div class="valid-feedback">
            Vérifié
          </div>
        </div>
      </div>
      <div class="form-row">
        <div class="col-md-4 mb-3">
          <label for="validationCustom03">Téléphone</label>
          <input type="text" class="form-control" id="validationCustom03" placeholder="0612345678" name="tel" required>
          <div class="invalid-feedback">
            Merci de renseigner un numéro de téléphone valide.
          </div>
        </div>
        <div class="form-group">
          <div class="col-md-4 mb-3">
            <label for="exampleInputEmail1">Email</label>
            <input type="email" class="form-control" id="exampleInputEmail1" aria-describedby="emailHelp" placeholder="@" name="email">
            <small id="emailHelp" class="form-text text-muted"></small>
          </div>
        </div>
        <div class="col-md-3 mb-3">
          <label for="validationCustom05">Adresse</label>
          <input type="text" class="form-control" id="validationCustom05" placeholder="21 Avenue des champs Elysées" name="adresse" required>
          <div class="invalid-feedback">
            Merci de renseigner une ville.
          </div>
        </div>
        <div class="col-md-3 mb-3">
          <label for="validationCustom05">Ville</label>
          <input type="text" class="form-control" id="validationCustom05" placeholder="Angers" name="ville" required>
          <div class="invalid-feedback">
            Merci de renseigner une ville.
          </div>
        </div>
        <div class="col-md-3 mb-3">
          <label for="validationCustom05">Code Postal</label>
          <input type="text" class="form-control" id="validationCustom05" placeholder="49000" name="codePostal" required>
          <div class="invalid-feedback">
            Merci de renseigner un code postal.
          </div>
        </div>
      </div>
      <div class="col-md-3 mb-3">
          <label for="validationCustom05">Adresse de l'installation</label>
          <input type="text" class="form-control" placeholder="21 Avenue des champs Elysées" name="adresseInstall">
        </div>
        <div class="col-md-3 mb-3">
          <label for="validationCustom05">Ville de l'installation</label>
          <input type="text" class="form-control" placeholder="Le Mans" name="villeInstall">
        </div>
      <div class="form-group">
        <div class="form-check">
          <input class="form-check-input" type="checkbox" value="" id="invalidCheck" required>
          <label class="form-check-label" for="invalidCheck">
            Je ne suis pas un robot
          </label>
          <div class="invalid-feedback">
            Vous devez cocher la case de vérification.
          </div>
        </div>
      </div>
      <button class="btn btn-primary" name='valider' type="submit">Valider le client</button>
    </form>



    Et mon deuxième fichier requete.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
     
    <?php
     
    if(isset($_POST['valider'])){
     
        $id_client=$_POST['id_Cli'];
        $prenom_client=$_POST['prenom'];
        $nom_client=$_POST['nom'];
        $tel_client=$_POST['tel'];
        $email_client=$_POST['email'];
        $adresse_client=$_POST['adresse'];
        $ville_client=$_POST['ville'];
        $cp_client=$_POST['codePostal'];
        $adresseInstall=$_POST['adresseInstall'];
        $villeInstall=$_POST['villeInstall'];
     
     
        // Requête d'insertion en bdd d'un client
        $ajoutClient = "INSERT INTO client(`prenom`,`nom`,`tel`,`email`,`adresse`,`ville`,`codePostal`,`adresseInstall`,`villeInstall`)
                        VALUES ('$prenom','$nom','$tel','$email','$adresse','$ville','$codePostal','$adresseInstall','$villeInstall')";
     
        // éxécution
        if(!mysqli_query($con, $ajoutClient) ){
            echo("Erreur dans la requete : " . $ajoutClient . ' <br>Erreur :' . mysqli_error($con));
        }
    }
     
    ?>
    Je précise que la connexion à la base est include sur toute mes pages, et que j'ai testé la requête dans phpMyAdmin et qu'elle fonctionne.

    Merci à vous.

  2. #2
    Expert confirmé Avatar de Toufik83
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2012
    Messages
    2 511
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Maroc

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 2 511
    Par défaut
    Bonjour,

    Le <form class="needs-validation" novalidate> n'a aucun attribut action ni method, et quand tu cliques sur le bouton submit, les données du formulaire sont envoyées à la page elle même et pas au fichier php.

    Il va falloir ajouter les attributs action et method :
    <form class="needs-validation" action="Lien vers le fichier php par rapport à la page" method="post" novalidate>

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2021
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 25
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Janvier 2021
    Messages : 16
    Par défaut
    Bonjour et merci une nouvelle fois Toufik.
    J'avais aussi mit des noms de variables différents dans mes $_POST et dans ma requête !
    Maintenant tout fonctionne.

    Bonne journée !


    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
    if(isset($_POST['valider'])){
     
        $prenom=$_POST['prenom'];
        $nom=$_POST['nom'];
        $tel=$_POST['tel'];
        $email=$_POST['email'];
        $adresse=$_POST['adresse'];
        $ville=$_POST['ville'];
        $cp=$_POST['codePostal'];
        $adresseInstall=$_POST['adresseInstall'];
        $villeInstall=$_POST['villeInstall'];
     
     
        // Requête d'insertion en bdd d'un client
        $ajoutClient = "INSERT INTO client(`prenom`,`nom`,`tel`,`email`,`adresse`,`ville`,`codePostal`,`adresseInstall`,`villeInstall`)
                        VALUES ('$prenom','$nom','$tel','$email','$adresse','$ville','$cp','$adresseInstall','$villeInstall')";

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

Discussions similaires

  1. [MySQL] requête qui ne s'exécute pas
    Par Souri84 dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 29/11/2010, 16h25
  2. [Oracle] Requête qui ne s'exécute pas
    Par Mayhem555 dans le forum PHP & Base de données
    Réponses: 7
    Dernier message: 20/08/2008, 20h30
  3. [SQL] Requête de mise à jour qui ne s'exécute pas !
    Par zoom61 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 21/08/2007, 11h53
  4. [SQL] Requête UPDATE qui ne s'exécute pas avec PHP
    Par xplose dans le forum PHP & Base de données
    Réponses: 6
    Dernier message: 16/08/2007, 09h42
  5. [MySQL] Requête qui ne s'exécute pas MAIS qui renvoie true pour mysql_query()
    Par francis13 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 01/05/2007, 03h31

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