Problème commentaire
- Accueil
- Forum
- Programmation
- PHP
- Problème commentaire
Smveee Le 30 avril 2016 à 13:00 (Édité le 25 janvier 2019 à 17:51)
Je vous écris car j'ai un problème lorsque je veux appliquer la vidéo sur les commentaires pour mon mini réseau social. J'aimerai que les utilisateurs ai la possibilité de commenté un statut. Sauf que j'ai ce problème là : http://puu.sh/oB4Aa/5ed1c4a207.png
Je pense avoir fait une connerie dans ma requête sql/execute mais je ne sais pas comment la résoudre :s
Mon mur.php :
<?php
session_start();
$bdd = 'mysql:host=localhost;dbname=sitesocialnetwork';
$user = 'root';
$password2 = '';
try{
$dbh = new PDO($bdd, $user,$password2, array(PDO::ATTR_ERRMODE => PDO::ERRMODE_WARNING));
}
catch (PDOException $e) {
echo 'Echec de la connexion : ' . $e->getMessage();
exit;
}
if(isset($_GET['id_utilisateur']) AND $_GET['id_utilisateur'] > 0)
{
$getid = intval($_GET['id_utilisateur']); // sécuriser la valeur en nombre
$id = intval($_GET['id_utilisateur']);
$requser = $dbh->prepare('SELECT * FROM utilisateurs WHERE id_utilisateur = ?');
$requser->execute(array($getid));
$userinfo = $requser->fetch();
$q = $dbh->prepare('SELECT description, date_statut FROM statut WHERE id_utilisateur = ? ORDER BY date_statut DESC');
$q->execute(array($getid));
$statut = $dbh->prepare('SELECT * FROM statut WHERE id_statut = ?');
$statut->execute(array($id));
$statut = $statut->fetch();
if(isset($_POST['submit_commentaire']))
{
if(isset($_POST['commentaire']) AND !empty($_POST['commentaire'])) // si les champs sont complétés et s'ils existent
{
$commentaire = htmlspecialchars($_POST['commentaire']);
$ins = $dbh->prepare('INSERT INTO peut_mettre_commentaire (commentaire,id_statut) VALUES (?,?,?)');
$ins->execute(array($commentaire,$id));
$c_erreur = "<span style='color:green'>Votre commentaire a bien été posté ! </span>";
}
else
{
$c_erreur = "Tous les champs doivent être complétés";
}
}
Ma base de donnée peut_mettre_commentaire : http://puu.sh/oB4CW/ad86525d0b.png
Ma base de donnée statut : http://puu.sh/oB4DD/20faed4759.png
L'erreur est entre les lignes 20 et 24 comprises je pense.
Cordialement
Florian Le 30 avril 2016 à 14:31 (Édité le 1 janvier 1970 à 01:00)
$ins = $dbh->prepare('INSERT INTO peut_mettre_commentaire (commentaire,id_statut) VALUES (?,?,?)'); $ins->execute(array($commentaire,$id));
Y'a 3 ? un en trop je pense Smveee Le 30 avril 2016 à 14:38 (Édité le 1 janvier 1970 à 01:00)
Smveee Le 2 mai 2016 à 15:53 (Édité le 1 janvier 1970 à 01:00)
if(isset($_GET['id_utilisateur']) AND !empty($_GET['id_utilisateur'] > 0))
{
$getid = intval($_GET['id_utilisateur']); // sécuriser la valeur en nombre
$requser = $dbh->prepare('SELECT * FROM utilisateurs WHERE id_utilisateur = ?');
$requser->execute(array($getid));
$userinfo = $requser->fetch();
//afficher statut
$statut = $dbh->prepare('SELECT * FROM statut WHERE id_utilisateur = ?');
$statut->execute(array($getid));
$statut = $statut->fetch();
$date = $statut['date_statut']; // On récupére la date du statut dans une variable
$q = $dbh->prepare('SELECT description, date_statut FROM statut WHERE id_utilisateur = ? AND date_statut = ? ORDER BY date_statut DESC');
$q->execute(array($getid,$date));
$IDstatut = $statut['id_statut']; // On met l'id_statut dans une variable pour le INSERT INTO
// partie commentaire
if(isset($_POST['submit_commentaire']))
{
if(isset($_POST['commentaire']) AND !empty($_POST['commentaire'])) // si les champs sont complétés et s'ils existent
{
$commentaire = htmlspecialchars($_POST['commentaire']);
$ins = $dbh->prepare('INSERT INTO peut_mettre_commentaire (commentaire,id_utilisateur,id_statut) VALUES (?,?,?)');
$ins->execute(array($commentaire,$getid,$IDstatut));
$c_erreur = "<span style='color:green'>Votre commentaire a bien été posté ! </span>";
}
else
{
$c_erreur = "Tous les champs doivent être complétés";
}
}
$commentaires = $dbh->prepare('SELECT * FROM peut_mettre_commentaire WHERE id_utilisateur = ?');
$commentaires->execute(array($getid));
j'ai plus d'erreur, lorsque je commente un statut ça me l'envoie bien dans ma bdd, mais j'ai beau cliqué sur un statut ou un autre ça me renvoie toujours les commentaires sur tous les statuts actuel