Envoi de formulaire qui ne fonctionne pas
Gaeru
-
Gaeru -
Gaeru -
Bonjour,
Mon problème et que quand j'envoi le formulaire, rien ne se passe et aucun commentaire n'est ajouter dans la BDD.
Voici le code en question :
Et voici le code de la page addcom.php
Merci d'avance :)
Mon problème et que quand j'envoi le formulaire, rien ne se passe et aucun commentaire n'est ajouter dans la BDD.
Voici le code en question :
<?php
require "config.php";
mysql_connect(DB_HOST, DB_LOGIN, DB_PASS);
mysql_select_db(DB_BDD);
?>
<?php
$sql = "SELECT * FROM news WHERE id=" .$_GET['id'];
$req = mysql_query($sql) or die('Erreur SQL !<br/> ' . $sql . ' ' . mysql_error());
$data = mysql_fetch_assoc($req);
echo "<h1 id=\"titreRed\">{$data["titre"]}</h1>";
echo "" . date(" G:i", strtotime($data["date"])) . "{$data["contenu"]}
";
$sql = "SELECT * FROM commentaires WHERE news_id=" .$_GET['id'] . " ORDER BY id DESC";
$req = mysql_query($sql) or die('Erreur SQL !
' . $sql . '
' . mysql_error());
while ($data2 = mysql_fetch_assoc($req)) {
echo $data2["pseudo"];
echo $data2["contenu"];
}
?>
<fieldset><legend>Votre commentaire</legend><form action="addcom.php" method="post">
Pseudo : <input type="text" name="pseudo"/><br/>
URL : <input type="text" name="url"/><br/>
Mail : <input type="text" name="mail"/><br/>
<textarea cols="" rows="" name="contenu" style="width:500px; height:200px;"></textarea><br/>
<input type="submit" value="Commenter"/>
<input type="hidden" name="news_id" value="<?php echo $data["id"]; ?>"/>
</form></fieldset>
Et voici le code de la page addcom.php
<?php
require "config.php";
mysql_connect(DB_HOST, DB_LOGIN, DB_PASS);
mysql_select_db(DB_BDD);
/*if (!empty($pseudo) && !empty($url) && !empty($email) && !empty($contenu)) {
echo "Veuillez remplir tout les champs";
}*/
if (isset($_POST) && isset($_POST['pseudo']) && isset($_POST['url']) && isset($_POST['email']) && isset($_POST['contenu'])) {
extract($_POST);
$sql = "INSERT INTO commentaires (pseudo,url,mail,contenu,news_id) VALUES ('$pseudo','$url','$mail','$contenu','$news_id')";
$req = mysql_query($sql) or die('Erreur SQL !<br/>' . $sql . '<br/>' . mysql_error());
$contenu = htmlentities($contenu);
echo "Commentaire envoyé";
}
?>
Merci d'avance :)
A voir également:
- Envoi de formulaire qui ne fonctionne pas
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Votre envoi est en cours de transport vers son site de livraison. ✓ - Forum Consommation & Internet
- Civilité sur un formulaire - Forum VB / VBA
1 réponse
Yo, normal vous essayez d'envoyer des variables qui n'existent pas:
'$pseudo','$url','$mail','$contenu','$news_id
ne sont déclarées nulle part.
Les varibales qui existent sont dans le tableau $_POST => $_POST['pseudo'] etc...
Une façon siimple d" vérifier aurait été de faire un echo des valeurs à insérer vous auriez tout de suite vu qu'elle n'affichent rien.
Donc soit utiliser les variables POST pour la requête soit(ce qui est mieux) créer de nouvelles variables à partir de celles envoyées en POST pour utiliser celles là(et utiliser mysql_real_escape_string plus une véérification que la variable correspond bien au type de champ dans la table de donnée, sinon erreur = table et programme à jeter).
'$pseudo','$url','$mail','$contenu','$news_id
ne sont déclarées nulle part.
Les varibales qui existent sont dans le tableau $_POST => $_POST['pseudo'] etc...
Une façon siimple d" vérifier aurait été de faire un echo des valeurs à insérer vous auriez tout de suite vu qu'elle n'affichent rien.
Donc soit utiliser les variables POST pour la requête soit(ce qui est mieux) créer de nouvelles variables à partir de celles envoyées en POST pour utiliser celles là(et utiliser mysql_real_escape_string plus une véérification que la variable correspond bien au type de champ dans la table de donnée, sinon erreur = table et programme à jeter).
Sinon rien à voir avec mon soucis mais quand j'écris un commentaire qui contient des simples quotes il m'affiche un joli message d'erreur. Comment échapper ces simples quotes ?