Insertion des données d'un formulaire dans mysql

Fermé
kamashi2016 Messages postés 3 Date d'inscription mercredi 28 septembre 2016 Statut Membre Dernière intervention 28 septembre 2016 - Modifié par crapoulou le 28/09/2016 à 14:24
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 - 29 sept. 2016 à 16:20
Bonjour, je suis tout nouveau dans le monde de la programmation. Mais, voilà je voudrais réaliser un formulaire pour remplir une base de donnée dans mysql. Mais malheureusement rien ne marche.
Voici mon code, prière de bien vouloir m'aider!
Merci!
N.B : je travaille sous bootstrap

<!-- Déclaration du formaulaire -->
<form class="form-horizontal" action="nouveauprojet.php" method="post">
<fieldset>

<!-- Form Name -->
<legend>ENREGISTREMENT PROJETS</legend>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="numero">N° DOSSIER</label>  
  <div class="col-md-4">
  <input id="numero" name="numero" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="client">CLIENT</label>  
  <div class="col-md-4">
  <input id="client" name="client" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="site">SITE</label>  
  <div class="col-md-4">
  <input id="site" name="site" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="designation">DESIGNATION DES TRAVAUX</label>  
  <div class="col-md-5">
  <input id="designation" name="designation" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="devis">N° DEVIS</label>  
  <div class="col-md-4">
  <input id="devis" name="devis" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="date">DATE DEVIS</label>  
  <div class="col-md-4">
  <input id="date" name="date" placeholder="" class="form-control input-md" required="" type="date">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="montant">MONTANT HT</label>  
  <div class="col-md-4">
  <input id="montant" name="montant" placeholder="" class="form-control input-md" required="" type="int">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="commande">N° COMMANDE</label>  
  <div class="col-md-4">
  <input id="commande" name="commande" placeholder="" class="form-control input-md" required="" type="int">
    
  </div>
</div>

<!-- Text input-->
<div class="form-group">
  <label class="col-md-4 control-label" for="auteur">AUTEUR</label>  
  <div class="col-md-4">
  <input id="auteur" name="auteur" placeholder="" class="form-control input-md" required="" type="text">
    
  </div>
</div>

<!-- Textarea -->
<div class="form-group">
  <label class="col-md-4 control-label" for="obs">OBSERVATIONS</label>
  <div class="col-md-4">                     
    <textarea class="form-control" id="obs" name="obs"></textarea>
  </div>
</div>

</fieldset>
<!-- Button (Double) -->
<div class="form-group">
  <label class="col-md-4 control-label" for="validation"></label>
  <div class="col-md-8">
    <input type="submit" class="btn btn-success" value="Envoyer" />
    <input type="reset" class="btn btn-danger" value="Annuler" />
  </div>
</div>
</form> 
</body>
</html>


<?php
// tester si le formulaire a été envoyé
if(isset($_POST["validation"]))
{
//tester si les champs ont été remplis
if (!empty($_POST["numero"]) && !empty($_POST["client"]) && !empty($_POST["site"]) && !empty($_POST["designation"]) && !empty($_POST["devis"]) && !empty($_POST["datedev"]) && !empty($_POST["montant"]) && !empty($_POST["commande"]) && !empty($_POST["auteur"]) && !empty($_POST["obs"]))
{
//récupération des données et les formater un peu
$numero = $_POST["numero"];
$client = $_POST["client"];
$site = $_POST["site"];
$designation = $_POST["designation"];
$devis = $_POST["devis"];
$datedev = $_POST["datedev"];
$montant = $_POST["montant"];
$commande = $_POST["commande"];
$auteur = $_POST["auteur"];
$obs = $_POST["obs"];

//connexion à la base de données
$serveur ="localhost"; //nom du seveur
$login ="root"; //login de l'utilisateur
$pass ="root"; // mot de pass
$base ="cocichantier"; //nom de la base de données

//connexion au serveur où se trouve la base de données    
    $bd=@mysql_connect($serveur, $login, $pass);

//sélection de la base de données au niveau du serveur    
    $retour=@mysql_select_db($base,$bd);

//Insertion de données
    $requete="INSERT into chantiers values ('','$numero','$client','$site','$designation','$devis','$datedev','$montant','$commande','$auteur','$obs')";

//Envoi de la requête
    $resultat = @mysql_db_query($base,$requete);
}
}
}
?> 
A voir également:

3 réponses

diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 857
28 sept. 2016 à 14:42
bonjour,

Quels sont les erreurs que vous rencontrez?
$_POST['datedev'] n'existe pas , il s'agit de $_POST['date'] qui existe pour la date de votre devis
0
kamashi2016 Messages postés 3 Date d'inscription mercredi 28 septembre 2016 Statut Membre Dernière intervention 28 septembre 2016
28 sept. 2016 à 14:48
Je ne l'avais pas remarqué ok je corrige mais toujours aucunes données dans ma base de données.

<!-- Déclaration du formaulaire -->
<form class="form-horizontal" action="nouveauprojet.php" method="post">
<fieldset>

<!-- Form Name -->
<legend>ENREGISTREMENT PROJETS</legend>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="numero">N° DOSSIER</label>
<div class="col-md-4">
<input id="numero" name="numero" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="client">CLIENT</label>
<div class="col-md-4">
<input id="client" name="client" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="site">SITE</label>
<div class="col-md-4">
<input id="site" name="site" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="designation">DESIGNATION DES TRAVAUX</label>
<div class="col-md-5">
<input id="designation" name="designation" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="devis">N° DEVIS</label>
<div class="col-md-4">
<input id="devis" name="devis" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="date">DATE DEVIS</label>
<div class="col-md-4">
<input id="date" name="date" placeholder="" class="form-control input-md" required="" type="date">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="montant">MONTANT HT</label>
<div class="col-md-4">
<input id="montant" name="montant" placeholder="" class="form-control input-md" required="" type="int">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="commande">N° COMMANDE</label>
<div class="col-md-4">
<input id="commande" name="commande" placeholder="" class="form-control input-md" required="" type="int">

</div>
</div>

<!-- Text input-->
<div class="form-group">
<label class="col-md-4 control-label" for="auteur">AUTEUR</label>
<div class="col-md-4">
<input id="auteur" name="auteur" placeholder="" class="form-control input-md" required="" type="text">

</div>
</div>

<!-- Textarea -->
<div class="form-group">
<label class="col-md-4 control-label" for="obs">OBSERVATIONS</label>
<div class="col-md-4">
<textarea class="form-control" id="obs" name="obs"></textarea>
</div>
</div>

</fieldset>
<!-- Button (Double) -->
<div class="form-group">
<label class="col-md-4 control-label" for="validation"></label>
<div class="col-md-8">
<input type="submit" class="btn btn-success" value="Envoyer" />
<input type="reset" class="btn btn-danger" value="Annuler" />
</div>
</div>
</form>
</body>
</html>


<?php
// tester si le formulaire a été envoyé
if(isset($_POST["validation"]))
{
//tester si les champs ont été remplis
if (!empty($_POST["numero"]) && !empty($_POST["client"]) && !empty($_POST["site"]) && !empty($_POST["designation"]) && !empty($_POST["devis"]) && !empty($_POST["datedev"]) && !empty($_POST["montant"]) && !empty($_POST["commande"]) && !empty($_POST["auteur"]) && !empty($_POST["obs"]))
{
//récupération des données et les formater un peu
$numero = $_POST["numero"];
$client = $_POST["client"];
$site = $_POST["site"];
$designation = $_POST["designation"];
$devis = $_POST["devis"];
$date = $_POST["date"];
$montant = $_POST["montant"];
$commande = $_POST["commande"];
$auteur = $_POST["auteur"];
$obs = $_POST["obs"];

//connexion à la base de données
$serveur ="localhost"; //nom du seveur
$login ="root"; //login de l'utilisateur
$pass ="root"; // mot de pass
$base ="cocichantier"; //nom de la base de données

//connexion au serveur où se trouve la base de données
$bd=@mysql_connect($serveur, $login, $pass);

//sélection de la base de données au niveau du serveur
$retour=@mysql_select_db($base,$bd);

//Insertion de données $bd=connect_bd(); if($bd<>0) {
$requete="INSERT into chantiers values ('','$numero','$client','$site','$designation','$devis','$datedev','$montant','$commande','$auteur','$obs')";

//Envoi de la requête
$resultat = @mysql_db_query($base,$requete);
}
}
}

?>

0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 857
28 sept. 2016 à 14:55
Au début de votre code PHP de traitement essayer de mettre le code de vérification pour les donner :
echo var_dump($_POST);die;

Si toute vos valeurs ressorte c'est que votre formulaire est correct ( donc pu besoin de s'attarder dessus , le problème viendra du php.
0
kamashi2016 Messages postés 3 Date d'inscription mercredi 28 septembre 2016 Statut Membre Dernière intervention 28 septembre 2016
28 sept. 2016 à 16:23
Toutes les valeurs ressortent, voici un resultat après mon test :

array(10) { ["numero"]=> string(4) "1214" ["client"]=> string(7) "Petroci" ["site"]=> string(7) "Marcory" ["designation"]=> string(8) "Automate" ["devis"]=> string(4) "1210" ["date"]=> string(10) "2016-09-27" ["montant"]=> string(6) "125555" ["commande"]=> string(4) "1014" ["auteur"]=> string(5) "Konan" ["obs"]=> string(2) "HY" }
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 857 > kamashi2016 Messages postés 3 Date d'inscription mercredi 28 septembre 2016 Statut Membre Dernière intervention 28 septembre 2016
28 sept. 2016 à 16:53
Faite la même chose pour les variable $bd et $retour
0
Pitet Messages postés 2826 Date d'inscription lundi 11 février 2013 Statut Membre Dernière intervention 21 juillet 2022 525
Modifié par Pitet le 29/09/2016 à 16:20
Salut,

Ton traitement PHP commence par la vérification de l'existence de $_POST['validation'], or aucun input ne comporte ce nom, cette vérification est donc toujours fausse, ce qui explique qu'il n'y a aucune insertion.

Ajoute l'attribut name="validation" sur ton bouton submit :
<input type="submit" class="btn btn-success" name="validation" value="Envoyer" />


Bonne journée,
0