Seite 1 von 1

News aus Forum auslesen..Smilie Problem

Verfasst: 30.07.2004 23:46
von Sengi
Also ich lese Beiträge aus einem Unterforum raus und stelle diese als News auf der Hauptseite da. So nun würd ich nun noch gern die Smilies richtig anzeigen. also anstatt dem smilie code die grafik.
hab schon im forum selbst gesucht und mit google aber nix gescheites gefunden. dann hab ich mal geguckt ob ich mir das von der phpbb eigenen smilefunktion abschauen kann aber da blick ich absolut nicht durch....
und meine lösung ist schrott, umständlich und dauert lange.

hat jemand da vielleicht einen nützlichen link oder codeschnipsel?
wäre echt super...

mfg
sengi

Verfasst: 30.07.2004 23:54
von Lumio

Code: Alles auswählen

str_replace("Smilie Code", "Grafik", "Variable vo drin gesucht werden soll");
eregi_replace("Smilie Code", "Grafik", "Variable vo drin gesucht werden soll");

Verfasst: 31.07.2004 00:09
von Sengi
mh mit der funktion gehts. mit preg_replace hatte ich nur probs *grübel*

dank dir..

Verfasst: 31.07.2004 00:31
von Lumio
bitte gern geschehn :) :wink:

Verfasst: 31.07.2004 00:33
von Sengi
ich blicks echt nicht... es klappt doch nicht *zusammenbrech*

hier ist mal der code:

Code: Alles auswählen

 
// Topic rausfiltern
  $sql_topics = "SELECT
                         topic_id,topic_title
                  FROM
                      phpbb_topics
                  WHERE
                       forum_id = '5'
                  ORDER BY
                          topic_time DESC";

  $result_topics=mysql_query($sql_topics) or die(mysql_error());
  if (mysql_num_rows($result_topics)){
     while ($row_topics = mysql_fetch_assoc($result_topics)){
         echo "<br>TOPIC:  <b>".$row_topics['topic_title']."</b><br>";
 // PostingId's fürs Topic suchen
         $sql_posts = "SELECT
                             post_id
                       FROM
                           phpbb_posts
                       WHERE
                            forum_id = '5' AND
                            topic_id = '".$row_topics['topic_id']."'
                       ORDER BY
                               post_time ASC";
         $result_posts=mysql_query($sql_posts) or die(mysql_error());
         if (mysql_num_rows($result_posts)){
            while ($row_posts = mysql_fetch_assoc($result_posts)){
 // Subject + Text raussuchen
                  $sql_posts_text = "SELECT
                                           post_subject,post_text
                                     FROM
                                         phpbb_posts_text
                                     WHERE
                                          post_id = '".$row_posts['post_id']."'";
                  $result_posts_text=mysql_query($sql_posts_text) or die(mysql_error());
                  if (mysql_num_rows($result_posts_text)){
                     while ($row_posts_text = mysql_fetch_assoc($result_posts_text)){

                         $sql_smilie="SELECT
                                            code,smile_url
                                      FROM
                                          phpbb_smilies";
                         $result_smile=mysql_query($sql_smilie) or die(mysql_error());
                         if (mysql_num_rows($result_smile)){

                            while ($row_smile = mysql_fetch_assoc($result_smile)){

                                  $posting=str_replace($row_smile['code'], "<img src='http://www.sengionline.de/phpBB2/images/smiles/".$row_smile['smile_url']."' border=0>", $row_posts_text['post_text']);

                            }
                            echo $posting."<br>";
                         }
                     }
                  }
            }
         }
     }
  }
ich weiß es ist nicht elegant aber ich will es ja erst mal ans laufen bekommen :)