Le code php d'insertion ne marche pas
Résolu
Bonjour,
J'ai un petit souci sur la requête d'insertion. Les données saisies sur le formulaire ne sont pas envoyées dans la base de données. voici le code :
Si vous voulez bien, voici tout le formulaire et toutes les requêtes:
Merci d'avance.
J'ai un petit souci sur la requête d'insertion. Les données saisies sur le formulaire ne sont pas envoyées dans la base de données. voici le code :
if(isset($_POST['Ajout'])){
$requete= "INSERT INTO locationch SET IdClient='".$_POST['IdClient']."', IdEmpl='".$_POST['IdEmpl']."', IdChambre='".$_POST['IdChambre']."', datdebLoc='".$_POST['datdebLoc']."', datfinLoc='".$_POST['datfinLoc']."', montAvaLoc='".$_POST['montAvaLoc']."', lieuProv='".$_POST['lieuProv']."', PosteEntr='".$_POST['PosteEntr']."', motifSjr='".$_POST['motifSjr']."'";
$resultat = mysql_query($requete);
Si vous voulez bien, voici tout le formulaire et toutes les requêtes:
<?php include("header.php");
include("calendrier.php");?>
<?php
require_once("connectionMYSQL.inc.php");
if(isset($_POST['Ajout'])){
$requete= "INSERT INTO locationch SET IdClient='".$_POST['IdClient']."', IdEmpl='".$_POST['IdEmpl']."', IdChambre='".$_POST['IdChambre']."', datdebLoc='".$_POST['datdebLoc']."', datfinLoc='".$_POST['datfinLoc']."', montAvaLoc='".$_POST['montAvaLoc']."', lieuProv='".$_POST['lieuProv']."', PosteEntr='".$_POST['PosteEntr']."', motifSjr='".$_POST['motifSjr']."'";
$resultat = mysql_query($requete);
}
if (isset($_GET['IdClient'])){
$requete4= "SELECT * FROM client WHERE IdClient = '".$_GET['IdClient']."' ";
$resultat4 = mysql_query($requete4);
$client = mysql_fetch_array($resultat4);
}
$requete2= "SELECT * FROM employe ";
$resultat2 = mysql_query($requete2);
$requete3= "SELECT * FROM chambre ";
$resultat3 = mysql_query($requete3);
$message=" Choisissez un client";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" >
<head>
<title>Gestion Restaurant de Mombassa Hotel</title>
</head>
<body>
<br></br>
<h2 align=center> ENREGISTREMENT DES LOCATIONS DE CHAMBRES</h2>
<FIELDSET width=300 STYLE="background: #bbb;" >
<legend align= center> Nouvelle Location</legend>
<table border = "4" cellpadding=10>
<form id="form1" name= "form1" action="LocationInsert.php" method="POST">
<table align=center border = "0" cellpadding=5>
<tr>
<td>Nom du Client:</td>
<td><input type="text" name="IdClient" value="<?php if(($_GET['IdClient'])) echo $client['IdClient'].$client['nomCl'].$client['prenom'];?>"/> <?php if(($_GET['IdClient'])) echo "<a href=\"ClienLocSearch..php\"> <img src=\"images/add.gif\" >"; else { echo $message." " ;?> <a href="ClienLocSearch.php">
<img src="images/add.gif" alt = "supprimer" border = '0px'> <?php }?></td>
</tr>
<tr>
<td>Nom de l'employe:</td>
<td><select name="IdEmpl" id="IdEmpl">
<?php while($employe= mysql_fetch_array($resultat2)) { ?>
<option value="<?php echo $employe['IdEmpl'];?>" > <?php echo $employe['nomEmpl'];?> </option>
<?php } ?>
</select >
</tr>
<tr>
<td>Numero Chambre:</td>
<td><select name="IdChambre" id="IdChambre">
<?php while($chambre= mysql_fetch_array($resultat3)) { ?>
<option value="<?php echo $chambre['IdChambre'];?>" > <?php echo $chambre['IdChambre'];?> </option>
<?php } ?>
</select >
</tr>
<tr>
<td> Date Debut:</td>
<td> <input type="text" name="datdebLoc" class="calendrier">
</tr>
<tr>
<td> Date Fin:</td>
<td> <input type="text" name="datfinLoc" class="calendrier">
</tr>
<tr>
<td>Montant Avancé:</td>
<td><input type="text" name="montAvaLoc"/></td>
</tr>
<tr>
<td>Lieu de Provenance:</td>
<td><input type="text" name="LieuProv"/></td>
</tr>
<tr>
<td>Poste d'Entrée:</td>
<td><input type="text" name="PosteEntr"/></td>
</tr>
<tr>
<td>Motif de Sejour:</td>
<td>Affaire<input type="radio" name="motifSjr" value="Affaire"/>Tourisme<input type="radio" name="motifSjr" value="Tourisme" />Autres<input type="radio" name="motifSjr" value="Autres"</td>
</tr>
<tr>
<td align="center" colspan="4">
<input type="submit" name="Ajout" value="Envoyer">
<input type="reset" name="Annuler" value="Annuler">
</td>
</tr>
</table>
</form>
</fieldset>
<?php include("footer.php")?>
</body>
</html>
Merci d'avance.
2 réponses
-
Bonjour
Je n'ai pas regardé en détail, mais déjà pour diagnostiquer :
print_r($_POST); au début pour voir si tu reçois bien ce que tu crois de ton formulaire
echo $requete; pour vérifier que la requête d'insertion est bien celle que tu crois
$resultat = mysql_query($requete) or die (mysql_error()); pour afficher un message d'erreur -
Rebonjour le Père,
Juste pour vous remercier. Finalement ça marche. Le problème était au niveau de l'oubli : l'attribut PosteEntr n'était pas identique que celui de la base de données, donc c'étaitPosteEnt
au lieu dePosteEntr
Je viens de le détecter avec, bien sur, leprint_r
que vous m'avez suggéré.
Grand merci.