Formulaire problème avec php
ANTHURIUMRE
Messages postés
118
Statut
Membre
-
ANTHURIUMRE Messages postés 118 Statut Membre -
ANTHURIUMRE Messages postés 118 Statut Membre -
Bonjour,
Je tente vainement d'insérer via un code php des données dans un tableau sondage. Non seulement le script n'envoie pas mes données dans mon tableau mais qui plus est easyphp m'indique cette erreur ;
Fatal error: Call to a member function fetch() on a non-object in C:\Program Files\EasyPHP-5.3.8.0\www\BLOG\questionsondage.php on line 35
Quelqu'un pourrait-il m'aider s'il vous plaît merci. Je mets ci-dessous mes scripts :
Questionsondage.php
Questionsondage_post.php
Je tente vainement d'insérer via un code php des données dans un tableau sondage. Non seulement le script n'envoie pas mes données dans mon tableau mais qui plus est easyphp m'indique cette erreur ;
Fatal error: Call to a member function fetch() on a non-object in C:\Program Files\EasyPHP-5.3.8.0\www\BLOG\questionsondage.php on line 35
Quelqu'un pourrait-il m'aider s'il vous plaît merci. Je mets ci-dessous mes scripts :
Questionsondage.php
<html>
<body>
<form action ="questionsondage_post.php" method="post">
<p><label >Question</label>
<input type ="text" size="200" name="question" id ="question"/><br>
<input type="submit" value="Envoyer"/>
</p>
</form>
<?php
try
{
$bdd = new PDO ('mysql:host:localhost;dbname=news','root','');
}
catch (Exception $e)
{
die('Erreur :'.$e->getMessage());
}
//Fin du code testeur
//debut code récupération des X derniers messages
$reponse=$bdd->query('SELECT question FROM sondage ORDER BY date_de_creation DESC LIMIT 0,1');
//Affichage de chaque message ( données protégées par htmlspecialchars )
while ($donnees=$reponse->fetch())
{
echo '<strong>'.htmlspecialchars($donnees['question']).'</strong> <br>';
}
$reponse->closeCursor();
?>
</body>
</html>
Questionsondage_post.php
<?php
try
{
$bdd = new PDO ('mysql:host:localhost;dbname=news','root','');
}
catch (Exception $e)
{
die('Erreur :'.$e->getMessage());
}
$req=$bdd->prepare('INSERT INTO sondage (question, date_de_creation) VALUES (?,NOW()) ');
$req->execute(array($_POST['question']));
header('Location:questionsondage.php');
?>
A voir également:
- Formulaire problème avec php
- Whatsapp formulaire opposition - Guide
- Formulaire de réclamation facebook compte désactivé - Guide
- Formulaire de reclamation instagram - Guide
- Easy php - Télécharger - Divers Web & Internet
- Expert php pinterest - Télécharger - Langages
3 réponses
Bonjour,
Si vous avez ce message d'erreur, cela signifie probablement que votre requete SQL 'SELECT question FROM sondage ORDER BY date_de_creation DESC LIMIT 0,1' comporte une erreur
$reponse ne doit pas être un statement mais égal à False, vérifiez votre requête à la main
Si vous avez ce message d'erreur, cela signifie probablement que votre requete SQL 'SELECT question FROM sondage ORDER BY date_de_creation DESC LIMIT 0,1' comporte une erreur
$reponse ne doit pas être un statement mais égal à False, vérifiez votre requête à la main
tu essaie de faire un fetch sur $reponse qui n'est pas un objet il s'agit que d'une variable d'où ton code d'erreur easyphp.
Bonjour neoprog67 et nickyaneo57,
J'ai résolu le problème du message d'erreur.
Maintenant mon souci est que je n'arrive pas à inserer dans ma table "question" mes questions. Pourtant je n'ai aucun message d'erreur d'easyphp. Cette insertion doit se faire par le biais de
Questionsondage_post.php
Merci pour votre aide.
J'ai résolu le problème du message d'erreur.
Maintenant mon souci est que je n'arrive pas à inserer dans ma table "question" mes questions. Pourtant je n'ai aucun message d'erreur d'easyphp. Cette insertion doit se faire par le biais de
Questionsondage_post.php
<?php
try
{
$bdd = new PDO ('mysql:host:localhost;dbname=news','root','');
}
catch (Exception $e)
{
die('Erreur :'.$e->getMessage());
}
$req=$bdd->prepare('INSERT INTO sondage (question, date_de_creation) VALUES (?,NOW()) ');
$req->execute(array($_POST['question']));
header('Location:questionsondage.php');
?>
Merci pour votre aide.