Probleme d'insertion des données dans la base de donnée [Résolu]

Signaler
Messages postés
25
Date d'inscription
mercredi 7 juin 2006
Statut
Membre
Dernière intervention
11 décembre 2007
-
Messages postés
48
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
31 janvier 2007
-
bonsoir à tous


j'ai un probleme je n'arrive pas à inserrer les données dans la base de donnée par le bias d'un formulaire.


voici le code:


<?php
include("variables.php"); //  fichier definisant les paramettres de connection et de definition de la bd
include("identification.php"); // fichier authentification


if($enregistre=="oui")
{
  if(empty($_POST['reference_produit']) || empty($_POST['nom_produit']) || empty($_POST['prix']) || empty($_POST['description']))
        die ("ERREUR: tous les champs doivent être remplis.");
   if (ereg("^[[:digit:]]+(\.[[:digit:]]+)?$",$prix) == 0)
              die("ERREUR : prix non valide.");


        $connect=mysql_connect(SERVEUR, NOM, PASS)
        or die('Connexion impossible : ' . mysql_error());
        $query=mysql_query("USE ".BASE);


 $sql = "INSERT INTO produit ('reference_produit','nom_produit','prix','description' values ('','$reference_produit', '$nom_produit','$description','$prix')";
$reponse= mysql_query($sql)
if($reponse)
{
 echo"les  données ont été bien enregistrées";
 }
 else
 echo"les données n'ont pas étés enregistrées";
 mysql_close();
}




include("haut.php");
{
?>
:: ajouter un produit au catalogue de la boutique

<form action="<?php echo $PHP_SELF; ?>" method="post">

Réference, ,
description,
<textarea name="description" cols="40" rows="8"></textarea>,

----

Nom, ,

----

 prix,

</form>
<hr>
:: les produits de la boutique

id,
Reference,
Nom,
Prix £,

<?php
}
      $connect=mysql_connect(SERVEUR, NOM, PASS)
  or die('Connexion impossible : ' . mysql_error());
      $query=mysql_query(\"USE \".BASE);

$sql1 = \"select * from produit\";
$resultat = mysql_query($sql1) or die(mysql_error());
if(mysql_num_rows($resultat) > 0)
{
 while($produit = mysql_fetch_array($resultat))
 {
   $id_produit = $produit['id_produit'];
   $reference_produit = $produit['reference_produit'];
   $nom_produit = $produit['nom_produit'];
   $prix = $produit['prix'];
   echo \"----
\";
   echo \"$id_produit, \";
   echo \"$reference_produit, \";
   echo \"$nom_produit, \";
   echo \"$prix, \";
   echo \"\";
  }
}
else
{
  echo\"----
aucun produit, \";
}
echo "
";
mysql_close();
include("bas.php");
?>
cependant la deuxieme partie marche : la selection et l'affichage des données quand j'inserre par phpmyadmin .
merci de m'aider

4 réponses

Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
autant pour moi ^^

$sql = "INSERT INTO produit ('reference_produit','nom_produit','prix','description' values ('','".$_POST["reference_produit"]."', '".$_POST["nom_produit"]."','".$_POST["description"]."','".$_POST["prix"]."')";

apres pense a utiliser les fonctions comme trim(), addslashes(), ...
Messages postés
624
Date d'inscription
mardi 6 mai 2003
Statut
Membre
Dernière intervention
14 décembre 2009
1
salut !

ton problemen est dans la recuperation des variables POST

remplace simplement
if($enregistre=="oui")
par
if ((isset($_POST['enregistre'])) && ($_POST['enregistre']=='OUI'))

et

$sql = "INSERT INTO produit
('reference_produit','nom_produit','prix','description' values
('','$reference_produit', '$nom_produit','$description','$prix')";
par
$sql = "INSERT INTO produit
('reference_produit','nom_produit','prix','description' values
('','$_POST["reference_produit"]', '$_POST["nom_produit"]','$_POST["description"]','$_POST["prix"]')";
Messages postés
25
Date d'inscription
mercredi 7 juin 2006
Statut
Membre
Dernière intervention
11 décembre 2007

il m'affiche l'erreur suivante:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in C:\Program Files\wamp\www\appli_boutique\adm1_produits.php on line 19
merci
Messages postés
48
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
31 janvier 2007

Salut,

Remplace sa:
$sql = "INSERT INTO produit
('reference_produit','nom_produit','prix','description' values
('','$reference_produit', '$nom_produit','$description','$prix')";

Par:

 $sql = "INSERT INTO produit
('reference_produit','nom_produit','prix','description') VALUES('', '$reference_produit', '$nom_produit', '$description', '$prix')";