Einfache Anzeige der letzten Themen in Div-Box

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.
4seven
Mitglied
Beiträge: 5869
Registriert: 21.04.2007 06:18

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von 4seven »

für die darstellung kroatischer zeichen wüsste ich im augenblick keine lösung.
irgendwann werde ich das nochmal völlig neu und utf8-konform erstellen.
das wird aber noch dauern.

für die iframe-alternative evtl. interessant
http://seminsights.com/web-development/ ... lternative

aber auch das werde ich irgendwann mit normalen board-variablen machen und dann kann man das boardweit verwenden, ganz ohne iframe.

als css kannst du hier eine andere css angeben, als die für prosilver und entsprechend ändern
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<link href="styles/prosilver/theme/common.css" rel="stylesheet" type="text/css" />

<title>Last Topics</title>
</head>
<body>
<?php
include("last_topics_1.php");
?>
</body>
</html>
Thunder198165409
Mitglied
Beiträge: 16
Registriert: 09.07.2009 23:39

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von Thunder198165409 »

was generiert den content? bzw. wie sieht die datei dazu aus?
der Content ist die includierte news.php von Webspell mit folgenden Inhalt:

Code: Alles auswählen

      if(!isset($site)) $site="news";
      //Sichheitsl&uuml;cke beheben
      $invalide = array('/','/\/',':','.');
      $site = str_replace($invalide,' ',$site);
      if(!file_exists($site.".php")) $site = "news";
      include($site.".php");
     
und noch ein frage, wie bindest du den code in dein template ein?
ich habe jetzt den von dir per link angegeben Code mit dem Betreff: 4seven\'s optimierter Code kopiert, angepasst und durch includen in die index.php von Webspell eingefügt. bzw. eine html wie auch von dir im Code beschrieben erstellt und die included
nimm auch mal testweise meinen überarbeiteten code und teste ihn nach deiner überarbeitung (anpassung):
http://www.phpbb.de/support/pastebin.ph ... view&s=141
den habe ich verwendet !

also meine last_topics_1.php sieht jetzt so aus:

Code: Alles auswählen

<?php
// ############ Anfang Festlegung der Vorgaben ######################################## 

// Laenge der angezeigten Themenueberschrift in Buchstaben 
$topic_length = '25'; 

// Maximal angezeigte Beiträge 
$topic_limit = '3'; 

// Eingeschraenkte Forumsanzeige ('0' = Aus; '1' = Ein) 
$special_forums = '0'; 

// IDs der zugelassenen Foren (nur wenn Forumsanzeige = "1"); Trennung der IDs mit einem Komma 
$forum_ids = '14,15,16'; 

// Relative Pfadangabe zur config.php 
$config_path = '/'; 

// Absoluter Pfad des Forums auf dem Server, bitte eingeben !!! 
$root_path = 'http://www.aion-illuminati.de/Forum/'; 

// ############ Ende Vorgaben ####################################### 

//Ermittlung des aktuellen Server-Verzeichnisses für Einbindung config.php 
$path = dirname(__FILE__); 

// Einbinden der phpBB-Konfigurationsdatei und somit Ermittlung der MySQL-Zugangsdaten 
include_once($path.$config_path .'config.php'); 

// Verbindungsaufbau mit Zugangsdaten aus config.php, Fehlermeldung bei Problemen 
mysql_connect($dbhost, $dbuser, $dbpasswd) OR die('Serververbindung fehlgeschlagen'); 

// Verbindung mit der phpBB-Datenbank herstellen 
mysql_select_db($dbname) OR die('Datenbankverbindung fehlgeschlagen!'); 

//Abfrage ob Foreneinschraenkung gesetzt per Verzweigung und Uebergabe der moeglichen IDS an die Variable 
// $where_forums = ( $special_forums == '0' ) ? '' : 't.forum_id NOT IN ('. $forum_ids .') AND '; 
 $where_forums = ( $special_forums == '0' ) ? '' : 't.forum_id IN ('. $forum_ids .') AND '; 

//Definition der SQL-Abfrage 
$sql = "SELECT t.*, f.forum_id, f.forum_name, u.username AS first_poster, u.user_colour, u.user_id AS first_poster_id, u2.username AS last_poster, u2.user_colour, u2.user_id AS last_poster_id, p.post_username AS first_poster_name, p2.post_username AS last_poster_name, p2.post_time 
FROM ". $table_prefix ."topics t, ". $table_prefix ."forums f, ". $table_prefix ."users u, ". $table_prefix ."posts p, ". $table_prefix ."posts p2, ". $table_prefix ."users u2 
WHERE $where_forums t.topic_poster = u.user_id AND f.forum_id = t.forum_id AND p.post_id = t.topic_first_post_id AND p2.post_id = t.topic_last_post_id AND u2.user_id = p2.poster_id 
ORDER BY t.topic_last_post_id DESC LIMIT $topic_limit"; 

/*
$sql = "SELECT t.*, f.forum_id, f.forum_name, u.username AS first_poster, u.user_id AS first_poster_id, u2.username AS last_poster, u2.user_id AS last_poster_id, p.post_username AS first_poster_name, p2.post_username AS last_poster_name, p2.post_time 
FROM ". $table_prefix ."topics t, ". $table_prefix ."forums f, ". $table_prefix ."users u, ". $table_prefix ."posts p, ". $table_prefix ."posts p2, ". $table_prefix ."users u2 
WHERE $where_forums t.topic_poster = u.user_id AND f.forum_id = t.forum_id AND p.post_id = t.topic_first_post_id AND p2.post_id = t.topic_last_post_id AND u2.user_id = p2.poster_id 
ORDER BY t.topic_last_post_id DESC LIMIT $topic_limit"; 
*/


//Durchfuehrung der SQL-Abfrage und Ergebnisuebergabe an $result 
$result = mysql_query($sql); 

// Wenn Abfrafge fehlgeschlagen = Fehlermeldung 
if( !$result ) 

{ 
die('SQL-Abfrage fehlgeschlagen!: '. mysql_error()); 
exit(); 
} 

//Definition Array für Aufnahme der Abfragedaten 
$line = array(); 

// Uebergabe der Daten bis zum letzten Datensatz an Array per Schleife 
while( $row = mysql_fetch_array($result) ) 

{ 
$line[] = $row; 
} 

// Strukturiertes Auslesen des Arrays und Variablenuebergabe 
for( $i = 0; $i < count($line); $i++ ) 
{ 
$forum_id = $line[$i]['forum_id']; //Forums-ID 
$forum_url = $root_path .'viewforum.php?f='. $forum_id; //Forums-Link 
$topic_id = $line[$i]['topic_id']; //Themen-ID 
$topic_url = $root_path .'viewtopic.php?t='. $topic_id; //Themen-Link 
// Ausgabeformat der Beitragsueberschrift (Thema) 
$topic_title = ( strlen($line[$i]['topic_title']) < $topic_length ) ? $line[$i]['topic_title'] : substr(stripslashes($line[$i]['topic_title']), 0, $topic_length) .'...'; 

// Themenklassifizierung 
$topic_type = ( $line[$i]['topic_type'] == '2' ) ? 'Beitrag ': ''; 
$topic_type .= ( $line[$i]['topic_type'] == '3' ) ? 'Globaler Beitrag ': ''; 
$topic_type .= ( $line[$i]['topic_type'] == '1' ) ? 'Kritischer Beitrag ': ''; 
$topic_type .= ( $line[$i]['topic_vote'] ) ? 'Abstimmung ': ''; 

$views = $line[$i]['topic_views']; 
$replies = $line[$i]['topic_replies']; 

$first_time = date('d.m.Y', $line[$i]['topic_time']); 
$first_author = ( $line[$i]['first_poster_id'] != '-1' ) ? '<a href="'. $root_path .'profile.php?mode=viewprofile&u='. $line[$i]['first_poster_id'] .'" target="_blank">'. $line[$i]['first_poster'] .'</a>' : ( ($line[$i]['first_poster_name'] != '' ) ? $line[$i]['first_poster_name'] : 'guest' );
$last_time = date('d.m.Y', $line[$i]['post_time']); 
$last_author = ( $line[$i]['last_poster_id'] != '-1' ) ? $line[$i]['last_poster'] : ( ($line[$i]['last_poster_name'] != '' ) ? $line[$i]['last_poster_name'] : 'guest' ); 
$last_uri = '<a href="'. $root_path .'viewtopic.php?p='. $line[$i]['topic_last_post_id'] .'#p'. $line[$i]['topic_last_post_id'] .'" target="_blank">'. $topic_title .'</a>'; 

// $last_uri = '<a href="'. $root_path .'viewtopic.php?p='. $line[$i]['topic_last_post_id'] .'#'. $line[$i]['topic_last_post_id'] .'" target="_blank">'. $last_author .'</a>'; 

$user_colour = $line[$i]['user_colour'];

// ############## Eigentliche Ausgabe der Beitraege ############# 

echo '<div>'; 
// Forumsname und Link, bei Bedarf loeschen 
// echo '<p><a href="'. $forum_url .'" target="_blank">'. $line[$i]['forum_name'] .'</a><br />'; 
echo '<p>Forum:<img src="pix.gif" alt="" width="6" height="1"/><a href="'. $topic_url.'" target="_blank">'. $line[$i]['forum_name'] .'</a><br />'; 
// echo '<p>'. $line[$i]['forum_name'] .'</a><br />'; 
// User, Bei Bedarf loeschen 
if ($last_author == 'Anonymous'){
echo 'User:<img src="pix.gif" alt="" width="16" height="1"/>Gast<br />';}
else{
echo 'User:<img src="pix.gif" alt="" width="16" height="1"/><a style="color: #'.$user_colour.'" href="'. $root_path .'memberlist.php?mode=viewprofile&u='.$line[$i]['last_poster_id'].'">'.$last_author.'</a><br />';}
// Thema und Link, Bei Bedarf loeschen 
echo 'Thread:<img src="pix.gif" alt="" width="2" height="1"/>'.$last_uri;
// echo '<a href="'. $topic_url .'" target="_blank">'. $topic_title .'</font></a> 
echo '</p>';
// echo $views;
echo '</div>'; 

// ############## Ende Eigentliche Ausgabe ############## 
} 
mysql_close(); // Beendigung der Datenbankverbindung 

?>
und meine last_topics_1.html so:

Code: Alles auswählen

  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="de" xml:lang="de">
    <head>
    <meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
    <meta http-equiv="Content-Style-Type" content="text/css" />
    <link href="styles/prosilver/theme/common.css" rel="stylesheet" type="text/css" />
    <title>Last Topics</title>
    </head>
    <body>
    <?php
    include("http://www.aion-illuminati.de/Forum/last_topics_1.php");
    ?>
    </body>
    </html>
Ergebnis gibts unter http://www.aion-illuminati.de/index11.php und wie man sieht sind die Umlautfehler immernoch vorhanden.

Mfg

Thunder198165409
4seven
Mitglied
Beiträge: 5869
Registriert: 21.04.2007 06:18

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von 4seven »

dann weiß ich da nicht weiter. auf meinen spaces ist es nicht so. vielleicht hat noch wer anders einen tip.
croxxx69
Mitglied
Beiträge: 258
Registriert: 13.10.2008 00:25
Kontaktdaten:

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von croxxx69 »

ah man...
hattes es ja gestern alles zum laufen gebracht... doch heute habe ich ausversehen meine including, bzw. das mit der iframe geloescht und musste es wieder neu machen, doch kriege es nicht mehr hin?!?!?!??!?!?!?!

also mein forum ist auf:
www.kava.hr/Forum

und da sind die last_topics.php und halt config.php... es laueft wenn ich da in dem ordner "forum" diesen code einsetze

Code: Alles auswählen

<script type="text/javascript">
<!--
var iH = "150";
var iB = "300";
document.write('<iframe '
      + 'allowtransparency="yes" '
      + 'height="' + iH + '" '
      + 'width="' + iB + '" '
      + 'frameborder=0 '
      + 'src="last_topics.php">'
      + '</iframe>');
//-->
</script>
doch will es ja auf meiner www.kava.hr haben... und dann setze ich das hier ein:

Code: Alles auswählen

<script type="text/javascript">
<!--
var iH = "150";
var iB = "300";
document.write('<iframe '
      + 'allowtransparency="yes" '
      + 'height="' + iH + '" '
      + 'width="' + iB + '" '
      + 'frameborder=0 '
      + 'src="/Forum/last_topics.php">'
      + '</iframe>');
//-->
</script>
doch bekomme dann immer diese fehlernachricht:

Code: Alles auswählen

Warning: include_once(/home/kavahr/public_html/config.php) [function.include-once]: failed to open stream: No such file or directory in /home/kavahr/public_html/last_topics.php on line 30

Warning: include_once() [function.include]: Failed opening '/home/kavahr/public_html/config.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/kavahr/public_html/last_topics.php on line 30

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'kavahr'@'localhost' (using password: NO) in /home/kavahr/public_html/last_topics.php on line 33
Serververbindung fehlgeschlagen
4seven
Mitglied
Beiträge: 5869
Registriert: 21.04.2007 06:18

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von 4seven »

doch bekomme dann immer diese fehlernachricht
Ja, die Datei last_topics.php ins Hauptverzeichnis und der Pfad muss stimmen :wink:

@Thunder198165409

Probier Du mal auch diesen Code zur Einbindung der last_topics.php im Template.
Hatte den Code inzwischen völlig vergessen *g

So kann man php ins Template beamen, ohne php global zu aktivieren.
Und xhtml 1.0 strict ist es auch (oh Wunder)..

Code: Alles auswählen

<script type="text/javascript">
<!--
var iH = "150";
var iB = "300";
document.write('<iframe '
      + 'allowtransparency="yes" '
      + 'height="' + iH + '" '
      + 'width="' + iB + '" '
      + 'frameborder=0 '
      + 'src="last_topics.php">'
      + '</iframe>');
//-->
</script>
croxxx69
Mitglied
Beiträge: 258
Registriert: 13.10.2008 00:25
Kontaktdaten:

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von croxxx69 »

ah man... geht immernoch nicht...

wieso hab ich nicht meine sachen abgespeichert...

also im hauptverzeichnis (http://www.kava.hr) liegt die last_topics.php und

Code: Alles auswählen

 <script type="text/javascript">
<!--
var iH = "150";
var iB = "300";
document.write('<iframe '
      + 'allowtransparency="yes" '
      + 'height="' + iH + '" '
      + 'width="' + iB + '" '
      + 'frameborder=0 '
      + 'src="last_topics.php">'
      + '</iframe>');
//-->
</script>
4seven
Mitglied
Beiträge: 5869
Registriert: 21.04.2007 06:18

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von 4seven »

Genau, kannst ja mal versuchen, den Pfad anzupassen.

evtl. mal den vollen Pfad:

Code: Alles auswählen

<script type="text/javascript">
<!--
var iH = "150";
var iB = "300";
document.write('<iframe '
      + 'allowtransparency="yes" '
      + 'height="' + iH + '" '
      + 'width="' + iB + '" '
      + 'frameborder=0 '
      + 'src="http://www.deinewebsite.de/last_topics.php">'
      + '</iframe>');
//-->
</script>
Je nachdem, wo die Datei liegt.

und ja, das speichern solcher Sachen ist wichtig.

Spiel einfach mal ein wenig mit dem Pfad....
croxxx69
Mitglied
Beiträge: 258
Registriert: 13.10.2008 00:25
Kontaktdaten:

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von croxxx69 »

hmmm... gestern war glaube ich meine last_post.php im Forum ordner...
und auf der index.html habe ich halt nur + 'src="/Forum/last_topics.php">' eingefuegt... aber du sagst die datei muss im hauptverzeichniss?
und wo muss ich denn den pfad fuer die config.php aendern?
croxxx69
Mitglied
Beiträge: 258
Registriert: 13.10.2008 00:25
Kontaktdaten:

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von croxxx69 »

danke, danke... habe es wieder hingekriegt... jetzt funzt es wieder...

nur wollte noch mal wegen den kroatischen zeichen nachfragen... kann man das selber irgendwie in charset=utf-8 encoden?

weil habe bemerkt das mir dann das script unbrauchbar ist wenn hallt daraus komische zeichen enstehen...
4seven
Mitglied
Beiträge: 5869
Registriert: 21.04.2007 06:18

Re: Einfache Anzeige der letzten Themen in Div-Box

Beitrag von 4seven »

hab jetzt alles mögliche probiert, ohne erfolg. irgendwann werde ich das mal re-designen für internationale utf-8 unterstützung. bis dahin wird es wohl nicht funktionieren. evtl. hat aber noch wer eine idee dazu. deutsche umlaute und sonderzeichen funktionieren ja auch. komischerweise schluckt das script kein ISO-8859-2. selbst mit iconv > keine chance.
Antworten

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