newssystem mit comments

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • newssystem mit comments

    hi leute. folgendes problem. ich möchte mein newssystem um eine kommentarfunktion erweitern. das newssystem ansich ist fertig und auch das comments script. jetzt stehe ich aber vor einem problem. wie bekomme ich es hin, zu den jeweiligen news auch die passenden kommentare angezeigt zu bekommen? also beides richtig zu vernetzten (db), und angezeigt zu bekommen wieviele kommentare schon geschrieben sind?

    also nach dem schema:

    titel | datum | Kommentare (3)

    text..........................
    ..............................
    ..............................
    ..............................

    ich habe für die news ne extra tabell und für die comments ebenso!

    hier mal der code meines newssystemes, das jetzt die news aus der db holt.

    PHP-Code:
    <html>
    <head>
    <title></title>
    <link href="content.css" rel="stylesheet" type="text/css" />
    </head>
    <body>

    <?php

    $dbserver 
    "localhost";
    $dbname "";
    $dbuser "";
    $dbpass "";

    mysql_connect($dbserver$dbuser$dbpass);
    mysql_select_db($dbname);

    $resultat mysql_query("SELECT * FROM neues ORDER BY date DESC");

    if(
    $resultat)
    {
    echo 
    "<table>\n";
    while(
    $row mysql_fetch_array($resultat))
    {
    echo 
    "<tr>";
    echo 
    "<td><b>" $row[titel] . "</b> | " $row[datum] . "<br>" $row[teaser] . "<br>";
    if(
    $row[news]!='') echo "<a href='neues_detail.php?id=".$row[id]."'>weiterlesen...</a>";
    else if(
    $row[link]!='') echo "<a href='".$row[link]."'>weiterlesen...</a>";
    echo 
    "<hr color='gray'><p></td>";
    echo 
    "</tr>\n";
    }
    echo 
    "</table>\n";
    mysql_free_result($resultat);
    }

    ?>

    </body>
    </html>

  • #2
    Gib doch deiner news-Tabelle für jede news eine eindeutige ID, die du auch allen zugehörigen comments in der comment-table zuweist. Dann kannst du die zu einer news zugehörigen comments mit einem join sauber rausfischen in einer mysql-Abfrage.
    mfg

    Kommentar


    • #3
      PHP-Code:
      <html>
      <head>
      <title></title>
      <link href="content.css" rel="stylesheet" type="text/css" />
      </head>
      <body>

      <?php

      $dbserver 
      "localhost";
      $dbname "";
      $dbuser "";
      $dbpass "";

      mysql_connect($dbserver$dbuser$dbpass);
      mysql_select_db($dbname);

      $resultat mysql_query("SELECT * FROM neues ORDER BY date DESC");

      if(
      $resultat)
      {
      echo 
      "<table>\n";
      while(
      $row mysql_fetch_array($resultat))
      {

      //Hier zählst du die Anzahl der Comments zu dem jeweiligen Newseintrag
      $query  mysql_query("SELECT COUNT(id) AS count FROM news_tabelle WHERE news_id='$row[id]'");
      $cfg    mysql_fetch_array($query);
      $anzahl $cfg[count];

      echo 
      "<tr>";
      echo 
      "<td><b>" $row[titel] . "</b> | " $row[datum] . "<br>" $row[teaser] . "<br>";
      if(
      $row[news]!='') echo "<a href='neues_detail.php?id=".$row[id]."'>weiterlesen...</a>";
      else if(
      $row[link]!='') echo "<a href='".$row[link]."'>weiterlesen...</a>";
      echo 
      "<hr color='gray'><p></td>";
      echo 
      "</tr>\n"; }
      echo 
      "<tr>\n";
      echo 
      "<td> <a href=\"kommentare.php?news_id=$row[id]\">Kommentare [$anzahl]</a></td>\n";
      echo 
      "</tr>";

      echo 
      "</table>\n";
      mysql_free_result($resultat);
      }

      ?>

      </body>
      </html>
      Hoffe du hast verstanden wie ich das mein

      Kommentar


      • #4
        Hab deinen Code nicht gelesen.

        Aber du speicherst zu jedem Comment ja sicher ein Parent (die id der news zu der der kommentar gehört) ab.

        Dann brauchst du ja nur Counten, wo parent = com_id

        zum auflisten: select * wo parent=com_id order by nicht vergessen

        Kommentar

        Lädt...
        X