Un probléme de requete

Fermé
ikam - Modifié le 15 avril 2017 à 12:53
jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 - 15 avril 2017 à 12:56
Bonjour,
jarrive pas a comprendre ou es lerreur je fais un jointure de deux tableaux commentaire et publication comme suit :

  public function select($id)
       {
           $this->db->select('*');
           $this->db->from('publication');
            $this->db->join('commentaire','publication.Id_pub=commentaire.Id_pub'); 
           $this->db->join('utilisateur','publication.id=utilisateur.id'); 
             //    $this->db->join('publication','publication_instance.id_commande=commande.id_cmd');
            // $this->db->join('publication','publication_instance.id_publication=publication.id'); 
           //  $this->db->where('Id_pub',$id);
           $query= $this->db->get();
           return $query->result();
       }

et l'affichage est : les commentaires ne saffichent pas sur la méme X publication
la publication X se répété et chaque commentaire dans une publication et je sais est ce que jai bien expliqué ou pas :/ je besoin dune solution sil vous plait

if (isset ($serv))
{
foreach ($serv as $row)
{
echo "<div class='wrap1'>";
echo "<form action='".base_url()."index.php/commentaire/add' method='post'>";
echo  "<h1>".$row ->titre."</h1>";

echo "<img src='".base_url()."images/".$row ->photo."'></br>";
echo "<p><b></b>" .$row ->description."</p> ";
echo "<p><b>publié le :                        </b>" .$row ->date."</p> ";
echo "<p><b>à :                        </b>" .$row ->lieu."</p>";

echo'<div class="publier">';

echo "<p>Publie par  ".$row ->nom."'></p>";
//
echo'<div class="bloc_c">';
echo'<br>';
echo'<br>';
echo'<div class="po1">';
echo"     ";echo"     ";echo "".$row ->descrpt_com."<br>";
echo'<br>';
echo'<br>';
echo'</div>';

echo'<div class="po2">';

echo'<div class="about-widget-avatare">';
echo "<img src='".base_url()."images/avatar/".$_SESSION['avatar']."'></br>";
echo'</div>';

echo'</div>';


EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici :ICI

Merci d'y penser dans tes prochains messages.


1 réponse

jordane45 Messages postés 38241 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 17 septembre 2024 4 689
15 avril 2017 à 12:56
Bonjour,

Pour commencer .... essayes de faire ta requete DIRECTEMENT dans ta bdd (via phpmyadmin par exemple ) AVANT de la mettre dans ton code PHP... et regarde ce que ça donne.

Pour info.. c'est normal que la publication se répète pour chaque commentaire ...
A toi de traiter le résultat de la requête ( à l'aide de if...) pour récupérer uniquement ce que tu veux )

En gros :
Boucle sur la requete
Si publication <> publication précédente
alors : ajouter bloc "publication"
Si publication = publication précédente
alors .. ajouter "commentaire" pour cette publication
Fin de la boucle

0