Page 1 sur 1

Script d'insertion de données rebelle

Posté : 25 août 2005, 00:29
par seb6
Bonjour,

Je souhaiterai votre aide pour une requête. Voici mon formulaire pour envoyer mes données dans ma base de données
<form action "cesars_enregistre.php" method="post" enctype="multipart/form-data">
<table>
<tr>
<td>Annee</td><td><input type="text" name="annee"></td>
</tr>
<tr>
<td>Nom</td><td><input type="text" name="nom"></td>
</tr>
<tr>
<td>Prenom</td><td><input type="text" name="prenom"></td>
</tr>
<tr>
<td>Film</td><td><input type="text" name="film"></td>
</tr>
<tr>
<td>Recompense</td>
<td>
<select name="recompense">
     <option value="Meilleur Film français">Meilleur Film Français</option>
      </select>
</td>
</tr>

</table>
<br>
<input type="submit" value="Enregistrer">
</form>
Le fichier cesars_enregistre.php
$sql= "INSERT INTO cesars (annee, nom, prenom, film, recompense) VALUES ('$annee', '$nom', '$prenom', '$film', '$recompense')";
mysql_query ($sql);

mysql_close ($liendb);

echo "cesars <$annee $recompense> Enregistré";
Quand je saisis, mes infos ne vont pas dans la base de données (j'ai bien configuré mon hébergeur, login et mot de passe). je n'ai pas de message d'erreur.

Merci de m'aider :wink:

Posté : 25 août 2005, 00:39
par Cyrano
Note de modération : Lis donc les règles du forum : "Aide", ça ne signifie rien, j'ai donc modifié le titre de ton message qui doit ^petre explicite.

Ceci dit: il manque les lignes de connexion à MySQL. Ensuite, à la fin de la ligne, mysql_query retourne FALSE en cas d'erreur, exploite ça:
mysql_query ($sql);
Ajoute donc un test d'erreur:
if( mysql_query ($sql))
{
    echo("<p>Insertion réussie</p>\n");
}
else
{
    echo("<p>Insertion ratée</p>\n");
}

Posté : 25 août 2005, 00:46
par seb6
Merci pour ta rapidité.

Mes lignes de connexion sont :

$liendb = mysql_connect ("hostname", "login", "mot de passe");
mysql_select_db ("db");


J'ai essayé ton code. Cela ne change rien. Il n'affiche ni Insertion réussie ni Insertion ratée :?

Posté : 25 août 2005, 01:02
par Cyrano
Fais le même test sur ta variable $liendb. C'est peut-être là que ça cloche.