le 16/11/2011 à 16:38
insertion d'un formulaire dans une base de donnée
salut a tous,
j'ai un problème dans mon script et j'aurai besoin de votre aide pour mieux cerner cette faute dans mon code.
mon code consiste a afficher dans un formulaire les données d'un code existant dans ma base de donnée, sinon il m'affiche un formulaire vide quand on rempli s'enregistre dans ma base de donnée, tous ceci dans la même page.
voici mon code:
le problème est que le script n'enregistre pas dans la base de donnée, je pourrai dire aussi que la recuperation et l'affichage se passe bien mais l'insertion ne fonctionne pas pourtant ma requete est exacte. merci de me venir en aide.
j'ai un problème dans mon script et j'aurai besoin de votre aide pour mieux cerner cette faute dans mon code.
mon code consiste a afficher dans un formulaire les données d'un code existant dans ma base de donnée, sinon il m'affiche un formulaire vide quand on rempli s'enregistre dans ma base de donnée, tous ceci dans la même page.
voici mon code:
<div id="divContent">
<h1>Fichier -> Palette</h1>
<form action="marqapeil.php" method="post" >
<fieldset>
<p>code:<input name="CodPal" type="text" size="10" maxlength="3" style="text-transform:uppercase"/>
<input type="submit" name="Affiche" value="Ajouter" /> <a href="aff_modif_marqapeil.php"><input type="button" value="Modifier" /> </a></p>
</fieldset>
</form>
<?php
//recuperation du numero de l'ami
if(isset($_POST['Affiche'])){
$CodPal=$_POST['CodPal'];
if(empty($CodPal))
{
echo '<script>alert("Entrez le code marque appareil")</script>';
}
else
{
//on se connecte a MYSQL
$dbb=mysql_connect($hostname_pesage, $username_pesage, $password_pesage) or die('Erreur de connexion ' . mysql_error());
// on sélectionne la base
mysql_select_db($database_pesage) or die('Erreur de selection ' . mysql_error());
// on crée la requête SQL
$requet='SELECT CodPal, LibPal, NbrCond, PoidPal, CodCond FROM tpalette WHERE CodPal="'.$CodPal.'"';
// on execute la requete
$execute_requet=mysql_query($requet)or die('selection echouée' . mysql_error());
// affichage des données
if($result=mysql_fetch_object($execute_requet)){
echo'<script>alert("ce code existe deja.")</script>';
?>
<form method="post" action="marqapeil.php">
<fieldset>
<table align="left" style="text-align:left">
<tr>
<td height="40" align="right">code:</td><td><input name="CodPal" type="text" value="<?php echo($result->CodPal) ;?>" tabindex="20" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Dimension:</td><td><input type="text" name="LibPal" tabindex="35" align="texttop" value="<?php echo($result->LibPal) ;?>" size="40" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Poids:</td><td><input type="text" name="PoidPal" tabindex="20" align="texttop" value="<?php echo($result->PoidPal) ;?>" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Sac:</td><td><input type="text" name="CodCond" tabindex="20" align="texttop" value="<?php echo($result->CodCond) ;?>" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Nbre de Sac:</td><td><input type="text" name="NbrCond" tabindex="20" align="texttop" value="<?php echo($result->NbrCond) ;?>" style="text-transform:uppercase"/></td></tr>
<tr>
<td></td><td align="left" height="40"><input type="submit" value="Valider" name="Valider" style="text-transform:uppercase" />
<input type="reset" value="annuler" onclick="sorti()" style="text-transform:uppercase"/></td></tr>
</table>
</fieldset>
</form>
<?php
}
else if(isset($_POST['Affiche'])){
?>
<form method="POST" action="marqapeil.php">
<fieldset>
<table align="left" style="text-align:left">
<tr>
<td height="40" align="right">code:</td><td><input name="CodPal" type="text" value="<?php echo htmlentities($CodPal); ?>" tabindex="20" /></td></tr>
<tr>
<td height="40" align="right">Dimension:</td><td><input type="text" name="LibPal" tabindex="35" align="texttop" size="40" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Poids:</td><td><input type="text" name="PoidPal" tabindex="20" align="texttop" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Sac:</td><td><input type="text" name="CodCond" tabindex="20" align="texttop" style="text-transform:uppercase"/></td></tr>
<tr>
<td height="40" align="right">Nbre de Sac:</td><td><input type="text" name="NbrCond" tabindex="20" align="texttop" style="text-transform:uppercase"/></td></tr>
<tr>
<td></td><td align="left"><input type="submit" value="Valider" name="Valide" style="text-transform:uppercase" />
<input type="reset" value="annuler" onclick="sorti()" style="text-transform:uppercase"/></td></tr>
</table>
</fieldset>
</form>
<?php
//recuperation des valeurs des variables
if(isset($_POST['Valide'])){
if(isset($_POST['CodPal'])) $CodPal=$_POST['CodPal'];
else $CodPal="";
if(isset($_POST['LibPal'])) $LibPal=$_POST['LibPal'];
else $LibPal="";
if(isset($_POST['PoidPal'])) $PoidPal=$_POST['PoidPal'];
else $PoidPal="";
if(isset($_POST['CodCond'])) $CodCond=$_POST['CodCond'];
else $CodCond="";
if(isset($_POST['NbrCond'])) $NbrCond=$_POST['NbrCond'];
else $NbrCond="";
if(empty($CodPal) || empty($LibPal) || empty($PoidPal) || empty($CodCond) || empty($NbrCond))
{
echo '<script>alert("remplir tous les champs")</script>';
}
// aucun champ n'est vide, on peut enregistrer dans la bd
else
{
//on se connecte a MYSQL
$dbb=mysql_connect($hostname_pesage, $username_pesage, $password_pesage) or die('Erreur de connexion ' . mysql_error());
// on sélectionne la base
mysql_select_db($database_pesage) or die('Erreur de selection ' . mysql_error());
// on insert dans la bd
$sql= 'INSERT INTO tpalette (CodPal, LibPal, PoidPal, CodCond, NbrCond) VALUES("'.$CodPal.'", "'.$LibPal.'", "'.$PoidPal.'", "'.$CodCond.'", "'.$NbrCond.'")';
// on execute la requete
$execute_requet=mysql_query($sql)or die('selection echouée' . mysql_error());
// affichage des données
if($execute_requet)
{
// on affiche le résultat pour le visiteur
echo '<script>alert("enregistrement reussi.")</script>';
?>
<?php
}
}
}
}
?>
<?php
}
}
mysql_close();
?>
</div>
le problème est que le script n'enregistre pas dans la base de donnée, je pourrai dire aussi que la recuperation et l'affichage se passe bien mais l'insertion ne fonctionne pas pourtant ma requete est exacte. merci de me venir en aide.