Formulaire insertion données dans MySQL PHP

Fermé
ghlem Messages postés 1 Date d'inscription mercredi 2 décembre 2015 Statut Membre Dernière intervention 2 décembre 2015 - 2 déc. 2015 à 11:06
 Utilisateur anonyme - 2 déc. 2015 à 11:31
Bonjour,
J'essaie en vain d'insérer les données d'un formulaire dans ma base sql, mais il me ramène une erreur : undefined variable
Est ce un problème dans ma base SQL ?
Voici mon code
<form method="post">
<table align="center" border="0">
<tr>
<td>Objet:</td>
<td><input type="text" name="objet" required></td>
</tr>
<tr>
<td>Message:</td>
<td><textarea name="msg" required></textarea></td>
</tr>
<tr>
<td> </td>
<td><input type="submit" name="validet" value="Ajouter"></td>
</tr>
</table>
</form>
<?php
if(isset($_POST['validet']))
{
//Récupérer les valeurs d'un formulaire
$objet=$_POST["objet"];
$msg=$_POST["msg"];
$date=date("Y-m-d H:i:s");

$servername="localhost";
$username="root";
$password="";
$dbname="projet_association";
//create connexion

$conn=new mysqli ($servername,$username,$password,$dbname);
//check connexion
if($conn->connect_error){
die("connexion failed : " . $conn->connect_error );
}

$sql = "INSERT INTO `projet_association`.`message`(`objet`,`txt`,`date`) VALUES (`$objet`,`$msg`,`$date`);";
if($conn-> query($sql)===TRUE)
{
echo "Insertion effectuée";
}
else
{
echo"Error:".$sql."<br>".$conn->error;
}

mysqli_close($conn);
}
?>
A voir également:

1 réponse

Bonjour

Non, undefined variable n'est probablement pas un message d'erreur de mysql, mais de PHP.
Pourquoi ne donnes-tu pas le message d'erreur complet ? Tu nous prives d'informations qui seraient bien utiles pour analyser le problème. Et précise aussi sur quelle ligne l'erreur est signalée.

Et quand tu postes du code, utilise la coloration syntaxique. Sélectionne le code et clique sur la petite flèche à droite du <> en haut de la fenêtre de rédaction des messsages.

Edit : il y a quand même une erreur dans ta requête. les valeurs
`$objet`,`$msg`,`$date`
sont des chaînes de caractères et devraient être entre apostrophes (du 4) :
'$objet','$msg','$date'
. Ce sont les noms de tables et de champs qui se mettent entre accents graves (du 7)
1