Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: Personne...
Auteur Sujet: Problème commentaire

Smveee

Messages: 13

Bonjour,

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
Publicité

Florian

Messages: 73

Hum déjà 
        $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

Messages: 13

Effectivement, mais j'ai toujours cette erreur : http://puu.sh/oB8Ct/bf4dfc9df5.png    :(

Smveee

Messages: 13

J'ai touché 2,3 truc mon code ressemble à ça désormais : 
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


Veuillez vous connecter ou créer un compte pour poster une réponse