je suis en train d'insérer les informations d'un utilisateur a la base de données mais lorsque j’exécute toujours il existe un problème dans la requête qui est exécuté dans mysqli_query().
le message d'erreur est: " erreur d'insertion des informations d'utilisateur"
code de la page "ajouter.php"

<?phpinclude("db.php");
session_start();
if(isset($_POST['bn'])) {//traitement sur le formulaire//$php=$_POST['ph'];

if(empty($_POST['nom']) || empty($_POST['prenom']) || empty($_POST['annees']) || empty($_POST['mois']) ||   empty($_POST['jours']) || empty($_POST['site']) || empty($_POST['login']) || empty($_POST['categorie'])     || empty($_POST['password'])){ echo "<center><strong><font style='color:red;'>il faut remplir tous les champs !!</font><strong> </center>": }
else{  if(isset($_POST['annees']) && isset($_POST['jours']) && isset($_POST['mois'])){ $date_naissance= $_POST['annees'].'-'.$_POST['mois'].'-'.$_POST['jours'];      }
$v=mysql_query("INSERT INTO utilisateur (nom,prenom,dateNaissance,siteWeb,login,motDePasse)     VALUES ('".$_POST['nom']."', '".$_POST['prenom']."', '".$date_naissance."', '".$_POST['site']."', '".$_POST['password']."')") or die("erreur d'insertion des informations d'utilisateur  ".mysql_error());if(isset($_POST['categorie'])){
$categorie = explode(";", $_POST['categorie']);
foreach ($categorie as $value) {
mysql_query("INSERT INTO utilisateurcategorie (idCategorie) VALUES('".$value."') ") or die("erreur d'insertion des catégorie  ".mysql_error());}}
header('Location: liste_utilisateurs.php?id='.$_SESSION['id_user']);}}?>

code la page html "inscp.php"

<html><head>    <title>e</title>    <meta charset="utf-8"></head>
<b><center><img src="user.png" width="50px" height="50px" />bonjour<br/>
vous etes sur la page d'inscription<br/>
<p>toute personne qui veut s'incrire <strong>doit remplir</strong> le formulaire suivant<form method="POST" enctype="multipart/form-data" action="ajouter_user.php"><table cellspacing="30%" cellpadding="20%" bgcolor="#CCCCCC" border="2" >
<tr>
<td colspan="20"><center> <font size="5" color="red"><strong>Formulaire d'incription</strong></font>
</center>
</td></tr>
<tr><td colspan="12">Nom</td>
<td><input type="text" name="nom"/></td><tr><td colspan="12">Prémon</td><td><input type="text" name="prenom"/></td></tr><tr><td colspan="12">Date de naissance</td><td> jours <input type="text" name="jours" /> mois <input type="text" name="mois"/> <br/><br/> année <input type="text" name="annees"/> </td></tr><tr><td colspan="12">Situation familiale</td><td><INPUT type="radio" name="choix" value="Célébataire"> Célébataire<INPUT type="radio" name="choix" value="marié"> Marié<INPUT type="radio" name="choix" value="divorcé"> Divorcé</td></tr><tr><td colspan="12">Site web</td>
<td><input type="text" name="site" value="http://" /></td></tr><tr>a<td colspan="12">Login</td><td><input type="text" name="login"/></td></tr><tr>around<td colspan="12">Password</td>around<td><input type="password" name="password"/></td>around</tr>aroundaroundaround<tr>around<td colspan="12">Langages utilisés</td>around<td><input type="checkbox" name="c" value="c" /> Langage Caround<input type="checkbox" name="cpp" value="cplus" /> C++around<input type="checkbox" name="ja" value="java"/> javaaround<input type="checkbox" name="ph" value="php"/> phparound<input type="checkbox" name="au" value="autres"/> autresaround</td>around</tr>aroundaround<tr>around<td colspan="12">Catégories de new préférés</td>around<td><select name="categorie[]" multiple>around<?phparoundinclude("db.php");around$r=mysql_query("SELECT * FROM categorie")or die("erreur d'affichage de la liste Catégories");aroundwhile($a=mysql_fetch_array($r)){aroundecho'<option value="'.$a['libelleCategorie'].'">'.$a['libelleCategorie'].'</option>';around}around around?>aroundaround</select></td>around</tr>aroundaround<tr>around<td colspan="20" > around<center>around<input type="submit" value="enregistre" name="bn"  />around<input type="reset" value="annuler" name="annuler"  />around<img src="true.png" width="20px" height="20px"/>around</center>around</tr>around</table>around</form>aroundaroundaroundaround</center>around</body>around</html>around

j'en sais pas comment résoudre le probléme.

1 réponse


Romain Chevallier
Réponse acceptée

Bonjour,

Pour commence ton code est pas indenter c'est affreux à lire.
Cependant je vois que tu as 6 colonnes dans ta requete mais tu n'as que 5 valeurs ! une variable c'est fait la malle pendant l'écriture ?

Bon courage