5 neueste Forenbeiträge auf Homepage einbinden

Du suchst einen bestimmten Mod, weißt aber nicht genau wo bzw. ob er überhaupt existiert? Wenn dir dieser Artikel nicht weiterhilft, kannst du hier den von dir gewünschten/gesuchten Mod beschreiben ...
Falls ein Mod-Autor eine der Anfragen hier aufnimmt, um einen neuen Mod zu entwickeln, geht's in [3.0.x] Mods in Entwicklung weiter.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Himmelskrieger
Mitglied
Beiträge: 12
Registriert: 09.10.2011 13:41

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Himmelskrieger »

Es wird immer nur der beitrag "Wiollkommen auf phpBB" angeizt, obwohl dier bereits gelöscht ist.
wwwBastler
Mitglied
Beiträge: 4
Registriert: 16.10.2011 11:54

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von wwwBastler »

Hi
Ich will das zusätzlich noch das Forum in dem sich der Post beindet angezeigt wird.Darfür habe ich mir etwas aus viewforum.php zusammen kopiert aber es wird nix ausgeben.

Code: Alles auswählen

<?php
//Hier deine Daten eintragen
$host="localhost";
$username="phpbb";
$password="xxxx";
$database="phpbb";

//Verbindung zur Datenbank
mysql_connect($host, $username, $password);

//Datenbankauswahl
mysql_select_db($database);

 $sql = 'SELECT t.topic_id, t.topic_title, f.forum_name, t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username'
        . ' FROM phpbb_topics t, phpbb_forums f, phpbb_posts p, phpbb_users u'
        . ' WHERE t.topic_id = p.topic_id AND '
        . ' f.forum_id = t.forum_id AND '
        . ' t.topic_status <> 2 AND '
        . ' p.post_id = t.topic_last_post_id AND '
        . ' p.poster_id = u.user_id'
        . ' ORDER BY p.post_id DESC LIMIT 5';
// wenn Abfrage möglich...
if ( $result = mysql_query($sql) )
{
   // dann Schleife solange ein Ergebnis ausgelesen werden kann...
   while ( $row = mysql_fetch_assoc($result) )
   {
      // mysql_fetch_assoc() füllt $row wie ein array() im Format: array('post_time' => 12345678)
      $frmDatum = date("d.m.Y", $row['post_time']);
      $frmZeit = date("H:i:s", $row['post_time']);
      $post = $row['post_id'];
      $forum_id = $row['forum_id'];
$sql_from = ' phpbb_forums f';
$lastread_select = ' f.forums';
$sql = "SELECT f.* $lastread_select
	FROM $sql_from
	WHERE f.forum_id = $forum_id;
$result = $database->sql_query($sql);
$forum_data = $database->sql_fetchrow($result)";

      echo "<font color=black size=2><a href=./forum/viewtopic.php?p=$post#p$post><font color=blue size=2>".$row['topic_title']."</a><br><font color=black size=2>$frmDatum $frmZeit <br></br>";
      echo "Im Forum: " . $forum_data['forum_name'] . "<br><br>";
   }
 
}
mysql_close();
?>
Kann mir da jemand helfen? Vorweg ich habe fast keine ahnung von SQL und php.
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Lehrling »

Hallo,

ich habe mit dem oben vorgestellten Code eine externe php-Seite gebastelt und es klappt auch alles prima, nur hätte ich gerne, dass nicht einfach nur der Titel des Beitrags angezeigt wird, sondern der Beitrag selbst.
Wo müsste ich da etwas ändern?
Danke im voraus und liebe Grüße
Beate

Code: Alles auswählen

<?php
//Hier deine Daten eintragen
$host="localhost";
$username="xxx";
$password="xxx";
$database="xxx";

//Verbindung zur Datenbank
mysql_connect($host, $username, $password);

//Datenbankauswahl
mysql_select_db($database);

 $sql = 'SELECT t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username'
        . ' FROM phpbb_topics t, phpbb_forums f, phpbb_posts p, phpbb_users u'
        . ' WHERE t.topic_id = p.topic_id AND '
        . ' f.forum_id = t.forum_id AND '
        . ' t.topic_status <> 2 AND '
        . ' p.post_id = t.topic_last_post_id AND '
        . ' p.poster_id = u.user_id'
        . ' ORDER BY p.post_id DESC LIMIT 5';
// wenn Abfrage möglich...
if ( $result = mysql_query($sql) )
{
   // dann Schleife solange ein Ergebnis ausgelesen werden kann...
   while ( $row = mysql_fetch_assoc($result) )
   {
      // mysql_fetch_assoc() füllt $row wie ein array() im Format: array('post_time' => 12345678)
      $frmDatum = date("d.m.Y", $row['post_time']);
      $frmZeit = date("H:i:s", $row['post_time']);
      $post = $row['post_id'];
// Eventuell musst du hier den Pfad ändern für den Link ins Forum
      echo "<font color=black size=2><a href=../phpbb3/viewtopic.php?p=$post#p$post><font color=black size=2>".$row['topic_title']."</a><br>$frmDatum $frmZeit<br></br>";
   }
}
mysql_close();
?>
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Miriam »

Dieser Code ermittelt keine Beitragstitel (nicht im engeren Sinne) aber Du kannst imho noch p.post_subject und p.post_text erweiternd in die Query einbinden und dann in der While Schleife mit abfragen.

Noch ein Wort zum Thema Coding:
Vor Kurzem hast Du Dir Gedanken über die Xampp Sicherheit gemacht, auch hattest Du, soweit ich mich entsinne, Bedenken, ob ein Bot Daten aus dem persönlichen Bereich lesen kann.

Auf der anderen Seite füllst Du Deine externen Seiten jeweils mit den fast wichtigsten Zugangsdaten.
Irgendwie ist das kontraproduktiv.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Lehrling »

ja, da hast du recht.
Ich habe mir jetzt eine Seite anhand dieser Anweisungen gebastelt.
https://wiki.phpbb.com/Practical.Displa ... rnal_pages
LG Beate
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Lehrling »

Ich habe da noch eine Frage:

ich würde die Beiträge auf der externen Seite gerne in zwei Spalten anzeigen lassen. Ich habe da auch schon alles Mögliche probiert mit IF-Befehlen à la <!-- IF FORUM_ID eq '2' --><div class="left"><!-- ELSE --><div class="right"> etc.
Aber es will nicht klappen.
Die beiden Dateien habe ich in den Pastebin geladen.
Hier die php-Datei:
https://www.phpbb.de/support/pastebin.p ... iew&s=1393

Und hier die template-Datei:
https://www.phpbb.de/support/pastebin.p ... iew&s=1394

LG Beate
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Miriam »

Wieso packst Du die jeweiligen Beiträge nicht in DIVs, die Du einfach per CSS nebeneinander automatisch anordnen läßt?
Das solltest Du ohne php, also allein durch HTML und CSS, hinbekommen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Lehrling »

ja, aber ich möchte doch, dass verschiedene Beiträge angezeigt werden.
Ich habe jetzt einen table drumherum gebaut und zwei Spalten bekommen. Aber in beiden Spalten werden dieselben Beiträge angezeigt.
Was könnte ich tun, damit in Spalte 1 z.B. Beiträge aus Forum 1 und 2 angezeigt werden und in Spalte 2 Beiträge aus Forum 4 und 5?
Benutzeravatar
Miriam
Mitglied
Beiträge: 12310
Registriert: 13.10.2004 07:18
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Miriam »

Prinzipielle Vorgehensweise: viewtopic.php?f=89&t=226049#p1290481
Mußt es nur etwas umbauen für Deine Anforderungen.
Gruss, Miriam.
Ich schmeiß' alles hin und...
... lasse es liegen
Lehrling
Ehemaliges Teammitglied
Beiträge: 3833
Registriert: 15.01.2012 20:00
Kontaktdaten:

Re: 5 neueste Forenbeiträge auf Homepage einbinden

Beitrag von Lehrling »

Mit folgendem Code bekomme ich die Container zwar in zwei Spalten, aber sie sind immer versetzt. Siehe dazu den Screenshot:

[ externes Bild ]

Code: Alles auswählen

 <!-- BEGIN announcements -->
   <div style="width:280px;padding:10px;margin-bottom:30px;border:1px solid black;<!-- IF announcements.S_ROW_COUNT is odd -->float:left;margin-left:5px;<!-- ELSE -->float:left;margin-left:335px;<!-- ENDIF -->">
 <span class="recipe">{announcements.TOPIC_TITLE}</span>
     <p><span class="boxtext">{announcements.POST_TEXT}</span></p></div>
      <!-- END announcements -->
Was kann ich tun, damit sie nebeneinander sind?
Antworten

Zurück zu „[3.0.x] Mod Suche/Anfragen“