Afficher le nombre de id de ma table

Fermé
Moilee Messages postés 1 Date d'inscription samedi 30 mars 2019 Statut Membre Dernière intervention 30 mars 2019 - Modifié le 30 mars 2019 à 09:17
jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024 - 30 mars 2019 à 09:13
bonjour, avec un system de vote sur une photo, j'aimerais afficher tout les id qui represente les votes pour chaque visiteurs, normalement cela devais marcher avec un rowCount comme dans le cours ou j;ai eu le code ,mais non ca ne marche pas , le user doit se connecter pour voter sur la photo, mais il n'arrive pas a voir le nobre total des votes ce qui fait que il ne voit que le sien. voila le code

<?php
session_start();
$bdd=new PDO('mysql:host=localhost;dbname=espace_membre','root','');
if(isset($_GET['id']) AND $_GET['id']>0)
{
 $getid=$_GET['id'];
 $requser=$bdd->prepare('SELECT*FROM membres WHERE id=?');
 $requser->execute(array($getid));
 $userinfo=$requser->fetch();
 
 
$likes=$bdd->prepare('SELECT id FROM likes WHERE id_membre=?');
$likes->execute(array($getid));
$likes=$likes->rowCount();

$dislikes=$bdd->prepare('SELECT id FROM dislikes WHERE id_membre=?');
$dislikes->execute(array($getid));
$dislikes=$dislikes->rowCount();

?>
<!Doctype html>
<html>
 <head>
  <title>Likes_Dislikes</title>
  <meta charset="utf-8"/>
  <link rel="stylesheet" href="style.css"/>
 </head>
  <body>
  
   <img src="photo2.jpg"/><br/>
   <?php
   if(isset($_SESSION['id']) AND $userinfo['id'] == $_SESSION['id'])
   {
   ?>
   <a href="action.php?t=1&id=<?=$getid?>">j'aime</a>(<?= $likes ?>)<br/>
   <a href="action.php?t=2&id=<?=$getid?>">Je n'aime pas</a>(<?= $dislikes ?>)
   <br/><br/>
   
   <?php
   }
   ?>
   <a href="deconnexion.php"> Se deconnecter</a>
  </body>
</html>
<?php
}
?>


action.php


<?php
session_start();
$bdd=new PDO('mysql:host=localhost;dbname=espace_membre','root','');

if(isset($_GET['t'],$_GET['id']) AND !empty($_GET['t']) AND !empty(['id']))
{
 $getid=(int)$_GET['id'];
 $gett=(int)$_GET['t'];
 
 $check=$bdd->prepare('SELECT *FROM membres WHERE id=?');
 $check->execute(array($getid));


  if($gett==1)
  {
   $check_like=$bdd->prepare('SELECT id FROM likes WHERE id_membre=?');
   $check_like->execute(array($getid));
   
     $del=$bdd->prepare('DELETE FROM dislikes WHERE id_membre=?');
     $del->execute(array($getid));
    if($check_like->rowCount()==1)
    {
     $del=$bdd->prepare('DELETE FROM likes WHERE id_membre=?');
     $del->execute(array($getid));
    }
    else
    {
   $insert=$bdd->prepare('INSERT INTO likes (id_membre) VALUES (?)');
   $insert->execute(array($getid));
    }
  }
  elseif($gett==2)
  {
   $check_dislike=$bdd->prepare('SELECT id FROM dislikes WHERE id_membre=?');
   $check_dislike->execute(array($getid));
   
   $del=$bdd->prepare('DELETE FROM likes WHERE id_membre=?');
     $del->execute(array($getid));
    if($check_dislike->rowCount()==1)
    {
     $del=$bdd->prepare('DELETE FROM dislikes WHERE id_membre=?');
     $del->execute(array($getid));
    }
    else
    {
   $insert=$bdd->prepare('INSERT INTO dislikes (id_membre) VALUES (?)');
   $insert->execute(array($getid));
    }
  }
  header('Location:like.php?id='.$getid);
 
 
}


merci de m'aider
A voir également:

1 réponse

jee pee Messages postés 40579 Date d'inscription mercredi 2 mai 2007 Statut Modérateur Dernière intervention 21 décembre 2024 9 460
Modifié le 30 mars 2019 à 09:18
Bonjour,

Je ne pratique pas le php. Je n'ai qu'une seule et unique remarque à émettre, si le code que tu as donné est l'exact réplique de ton source en ligne 7 :
('SELECT*FROM membres WHERE id=?')
 
devrait s'écrire
('SELECT * FROM membres WHERE id=?')
 
et pareil en ligne 62

cdlt
0