Erreur requête SQL ajouter dans programme php
Résolu
fluks
Messages postés
15
Date d'inscription
Statut
Membre
Dernière intervention
-
Profil bloqué -
Profil bloqué -
Bonjour,
Je me tourne vers vous, car je suis au bord du nervous breakdown, je suis complètement novice en php, et c'est bien malgré moi que je m'y met, je dois faire un site en php (projet pr mon Master 2) qui gère entre autres, l'ajout de données vers une base MySQL en passant par un formulaire.
Le formulaire html, pas de problème, mais IMPOSSIBLE d'entrer les données : "erreur requête" !!!
J'offre à la vindicte populaire mon humble code php tout pourri...aux bonnes âmes ayez pitié, c'est mon PREMIER et j'espère DERNIER site php :
Voici le code du fichier ajouterform.php qui propose le formulaire et apelle le second programme ajoutersql.php que je donnerai après :
<body>
<br><br><br>
<h1 align="center">Ajouter un Disque :</h1>
<form action= "ajoutersql.php" method="POST">
<td><x>Référence : </x><br><td><input type="text" name="reference" size="20"><br></td>
<td><x>Titre : </x><br><input type="text" name="titre" size="50"><br></td>
<td><x>Artiste : </x><br><input type="text" name="artiste" size="30"><br></td>
<td><x>Label : </x><br><input type="text" name="label" size="30"><br></td>
<td><x>Genre : </x><br><input type="text" name="genre" size="15"><br></td>
<x>
<label for="format">Format :</label><br />
<select name="format" id="format">
<option value="CD">CD</option>
<option value="LP">LP</option>
<option value="2xLP">2xLP</option>
<option value="MAXI">MAXI</option>
<option value="EP">EP</option>
</select>
</x><br>
<td><x>Année : </x><br><input type="text" name="annee" size="10"><br></td>
<td><x>Cote : </x><br><input type="text" name="cote" size="5"><br></td>
<td><x>Image : </x><br><input type="text" name="image" size="30"><br></td>
<br><input type="submit" value="Ajouter">
</form>
</body>
</html>
et voici le fichier ajoutersql.php :
<html><head><title>Ajouter un Disque</title></head>
<body>
<?php
require("connecter.php");
$query= "INSERT INTO release (rel_ref, rel_titre, rel_artiste, rel_label, rel_genre, rel_format, rel_annee, rel_cote, rel_image)
VALUES ('$_POST[reference]','$_POST[titre]','$_POST[artiste]', '$_POST[label]','$_POST[genre]', '$_POST[format]', '$_POST[annee]', '$_POST[cote]', '$_POST[image]')";
mysql_query($query)or die( "erreur requete" );
mysql_close($link);
print "Produit ajouté : c'est fait";
?>
MERCI aux personnes qui se pencheront sur mon problème, je sais que c'est pas facile de se plonger comme ca dans un code dont on n'est pas l'auteur...
Je me tourne vers vous, car je suis au bord du nervous breakdown, je suis complètement novice en php, et c'est bien malgré moi que je m'y met, je dois faire un site en php (projet pr mon Master 2) qui gère entre autres, l'ajout de données vers une base MySQL en passant par un formulaire.
Le formulaire html, pas de problème, mais IMPOSSIBLE d'entrer les données : "erreur requête" !!!
J'offre à la vindicte populaire mon humble code php tout pourri...aux bonnes âmes ayez pitié, c'est mon PREMIER et j'espère DERNIER site php :
Voici le code du fichier ajouterform.php qui propose le formulaire et apelle le second programme ajoutersql.php que je donnerai après :
<body>
<br><br><br>
<h1 align="center">Ajouter un Disque :</h1>
<form action= "ajoutersql.php" method="POST">
<td><x>Référence : </x><br><td><input type="text" name="reference" size="20"><br></td>
<td><x>Titre : </x><br><input type="text" name="titre" size="50"><br></td>
<td><x>Artiste : </x><br><input type="text" name="artiste" size="30"><br></td>
<td><x>Label : </x><br><input type="text" name="label" size="30"><br></td>
<td><x>Genre : </x><br><input type="text" name="genre" size="15"><br></td>
<x>
<label for="format">Format :</label><br />
<select name="format" id="format">
<option value="CD">CD</option>
<option value="LP">LP</option>
<option value="2xLP">2xLP</option>
<option value="MAXI">MAXI</option>
<option value="EP">EP</option>
</select>
</x><br>
<td><x>Année : </x><br><input type="text" name="annee" size="10"><br></td>
<td><x>Cote : </x><br><input type="text" name="cote" size="5"><br></td>
<td><x>Image : </x><br><input type="text" name="image" size="30"><br></td>
<br><input type="submit" value="Ajouter">
</form>
</body>
</html>
et voici le fichier ajoutersql.php :
<html><head><title>Ajouter un Disque</title></head>
<body>
<?php
require("connecter.php");
$query= "INSERT INTO release (rel_ref, rel_titre, rel_artiste, rel_label, rel_genre, rel_format, rel_annee, rel_cote, rel_image)
VALUES ('$_POST[reference]','$_POST[titre]','$_POST[artiste]', '$_POST[label]','$_POST[genre]', '$_POST[format]', '$_POST[annee]', '$_POST[cote]', '$_POST[image]')";
mysql_query($query)or die( "erreur requete" );
mysql_close($link);
print "Produit ajouté : c'est fait";
?>
MERCI aux personnes qui se pencheront sur mon problème, je sais que c'est pas facile de se plonger comme ca dans un code dont on n'est pas l'auteur...
A voir également:
- Erreur requête SQL ajouter dans programme php
- Programme demarrage windows - Guide
- Ajouter agenda outlook dans google agenda - Guide
- Ajouter un programme au demarrage windows 10 - Guide
- Cette action ne peut pas être réalisée car le fichier est ouvert dans un autre programme - Guide
- Ajouter signature word - Guide
2 réponses
bonsoir,
essaye comme ça
essaye comme ça
$query= "INSERT INTO release (rel_ref, rel_titre, rel_artiste, rel_label, rel_genre, rel_format, rel_annee, rel_cote, rel_image) VALUES ('".$_POST[reference]."','".$_POST[titre]."','".$_POST[artiste]."', '".$_POST[label]."','".$_POST[genre]."', '".$_POST[format]."', '".$_POST[annee]."', '".$_POST[cote]."', '".$_POST[image]."')"; //je place un echo pour voir si tu recupere tt tes valeurs echo $query.'</br/>';
bonsoir lewis34,
merci pour ta réponse rapide !!
ceci dit, comme a chaque fois, je passe 5h a chercher (sans mentir je suis la dessus depuis 19h30), et c'est une fois que j'ai posté que j'ai une idée...
en fait c'était simplement dans le INSERT into release, et bien il fallait écrire INSERT into `release`......j'ai aucune idée d'ou ca provient cette erreur car c'est rarement écrit comme ca, si jamais tu le sais je serais ravi de l'apprendre !
merci en tout cas,
on peut le spécifier comme résolu !
merci pour ta réponse rapide !!
ceci dit, comme a chaque fois, je passe 5h a chercher (sans mentir je suis la dessus depuis 19h30), et c'est une fois que j'ai posté que j'ai une idée...
en fait c'était simplement dans le INSERT into release, et bien il fallait écrire INSERT into `release`......j'ai aucune idée d'ou ca provient cette erreur car c'est rarement écrit comme ca, si jamais tu le sais je serais ravi de l'apprendre !
merci en tout cas,
on peut le spécifier comme résolu !
Bonjour,
Quelques bonnes pratiques PHP :
- Je te conseille de faire $_POST['reference'] au lieu de $_POST[reference] pour tes variables.
Dans $_POST[reference], reference peut-être traitée comme une constante, donc causer erreur.
- Et aussi ajouter mysql_error() pour afficher le message d'erreur : die( 'Erreur survenue : ' .mysql_error() )
- Filtrer les données avant de faire INSERT INTO afin d'éviter l'injection de codes malicieux dans ta base de données.
Quelques bonnes pratiques PHP :
- Je te conseille de faire $_POST['reference'] au lieu de $_POST[reference] pour tes variables.
Dans $_POST[reference], reference peut-être traitée comme une constante, donc causer erreur.
- Et aussi ajouter mysql_error() pour afficher le message d'erreur : die( 'Erreur survenue : ' .mysql_error() )
- Filtrer les données avant de faire INSERT INTO afin d'éviter l'injection de codes malicieux dans ta base de données.