Script-solution.de » Community » Support-Board » Foren » Boardsolution » Boardsolution v1.2x und älter » Mod-Anleitungen » RSS-Feed in das Board integrieren
  • Willkommen, Gast!
  • Freitag, 10. Februar 2012, 05:18:05
 
Thema: "RSS-Feed in das Board integrieren" [ Seite 1 ]

Kein neuer Beitrag VaiT , 17.05.2007, 23:48
Beitrag #1   

IP: n/a
Rang: * * * * * O O
Registrierung: 27.08.2006, 22:45
Homepage: http://www.vait.de
Wohnort: Kassel
 

Supporter mit 438 Punkte, 348 Beiträge
So hier nun wie versprochen das Script für einen RSS-FEED für das Forum. Der Rss-Feed gibt, so, wie
er jetzt eingestellt ist, die letzten 10 Beiträge aus dem Forum aus mit den ersten 150 Zeichen aus
dem jeweiligen Beitrag und der entsprechenden Verlinkung natürlich.

Um den RSS-FEED in das Forum einzubinden gehe folgendermaßen vor:

  1. Kopier den Code von unten und speicher ihn als rss.php ab
  2. Nun musst du den Code noch an dein Board anpassen. Dies geschieht folgendermaßen:
    • [Zeile 20-21] Gib hier deine Parameter für die Verbindung mit der Datenbank ein (Username,
      Password und Datenbank).
    • [Zeile 40] Definiere hier die URL zu deinem Board.
    • [Zeile 52-53] Trage hier noch deine email-Adresse ein

  3. Erstelle nun ein neues Unterverzeichnis in dem Verzeichnis, in dem auch dein Forum liegt und nenn
    dies rss. Alternativ dazu kannst du auch einfach das bereits vorhandene Verzeichnis modules benutzen.
  4. Lade nun die fertig angepasste und abgespeicherte rss.php in das von dir erstellte rss-Verzeichnis
    oder eben in das Verzeichnis modules.
  5. Fertig ist dein eigener RSS-FEED von dein Forum. Per Link zu deiner rss.php kannst du den Feed nun
    auf deinem Board zum abonnieren anzeigen lassen. Viel Spaß damit ;-)
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
<?php

#Stringlaenge der Themennamen kuerzen
function limited_string($input,$length)
{
   $copy = $input;
   if(strlen($input) > $length)
   {
      $complete = $copy;
      $input = substr($input,0,$length)."...";
   }
   else $complete = '';
   return array('displayed' => htmlspecialchars($input,ENT_QUOTES),'complete' => $complete);
}
#Verbindung zur Datenbank
$con = mysql_connect('localhost','NAME','PASSWORD');
mysql_select_db('DATENBANK',$con);

$query = mysql_query('SELECT t.id,t.rubrikid,t.name,t.post_time,t.post_user,p.text,u.user_name,f.forum_name
                  FROM bs_topics t
                  LEFT JOIN bs_user u ON t.post_user = u.id
                  LEFT JOIN bs_forums f ON t.rubrikid = f.id
                  LEFT JOIN bs_posts p ON t.lastpost_id = p.id
                  ORDER BY t.id DESC 
                  LIMIT 10',$con);

#Datensatz in Array fassen
while($data = mysql_fetch_assoc($query))
{
   $return[] = $data;
}

#BOARD-URL definieren
#BSP: 'http/www.vait.de/forum' wenn das Board im Verzeichnis forum liegt
#WICHTIG: die URL darf NICHT mit einem '/' enden
$board_url = '';

#RSS-Feed Ausgabe
$output =    "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>
                <rss version=\"2.0\">
               <channel>
                   <title>VaiT.de :: Talk-Board</title>
                    <link>$board_url</link>
                    <description>Die neusten und aktuellsten Themen im Talk-Board</description>
                    <language>de-de</language>
                    <pubDate>$now</pubDate>
                    <lastBuildDate>$time</lastBuildDate>
                    <managingEditor>DEINE@EMAILADRESSE.DE</managingEditor>
                    <webMaster>DEINE@EMAILADRESSE.DE</webMaster>";

#RSS-Feed mit Daten füllen            
foreach ($return as $data)
{
   $title = $data['name'];
   $url = $board_url.'/index.php?action=posts&amp;fid='.$data['rubrikid'].'&amp;tid='.$data['id'];
   $post_time = $data['post_time'];
   $time = date("D, d M Y H:i:s T",$post_time);
   $text = strip_tags($data['text']);
   $r = limited_string($text,150);
   $description = $r['displayed'];

    $output .=    "<item><title>".$title."</title>
                <link>".$url."</link>
                <description>".$description."</description>
                  </item>";
}
#RSS-Feed schließen und ausgeben
$output .= "</channel></rss>";
echo $output;

#Verbindung zur Datenbank schließen
mysql_close($con);

?>

In diesem Sinne, bei Fragen und Anregungen stehen ich natürlich gerne zur Verfügung, euer VaiT.

 
Kein neuer Beitrag KingGO , 17.05.2007, 23:54
Beitrag #2   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
Machs doch wie ich ;)

ich habe die Daten vom Board gleich bezogen ;)

Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
<?php

require_once("install/mysql_config.php");
require_once("install/user_config.php");
   
$ver = mysql_connect(MYSQL_HOST, MYSQL_LOGIN, MYSQL_PASSWORD) OR die("Incorrect config");
      mysql_select_db(MYSQL_DATABASE) OR die("Incorrect config");


#Stringlaenge der Themennamen kuerzen
function limited_string($input,$length)
{
    $copy = $input;
    if(strlen($input) > $length)
    {
        $complete = $copy;
        $input = substr($input,0,$length)."...";
    }
    else $complete = '';
    return array('displayed' => htmlspecialchars($input,ENT_QUOTES),'complete' => $complete);
}

$query = mysql_query('SELECT t.id,t.rubrikid,t.name,t.post_time,t.post_user,p.text,u.user_name,f.forum_name
                        FROM bs_topics t
                        LEFT JOIN bs_user u ON t.post_user = u.id
                        LEFT JOIN bs_forums f ON t.rubrikid = f.id
                        LEFT JOIN bs_posts p ON t.lastpost_id = p.id
                        ORDER BY t.id DESC 
                        LIMIT 10',$ver);

#Datensatz in Array fassen
while($data = mysql_fetch_assoc($query))
{
    $return[] = $data;
}

#RSS-Feed Ausgabe
$output =     "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>
                 <rss version=\"2.0\">
                  <channel>
                      <title>Netcode Board - Neue Themen</title>
                    <link>". $url ."</link>
                    <description>Die Neusten und aktuellen Themen</description>
                    <language>de-de</language>
                    <pubDate>$now</pubDate>
                    <lastBuildDate>$time</lastBuildDate>
                    <managingEditor></managingEditor>
                    <webMaster></webMaster>";

#RSS-Feed mit Daten füllen            
foreach ($return as $data)
{
    $title = $data['name'];
    $url = BOARD_URL . "/index.php?action=posts&amp;fid=".$data[rubrikid]."&amp;tid=".$data[id];
    $post_time = $data['post_time'];
    $time = date("D, d M Y H:i:s T",$post_time);
    $text = strip_tags($data['text']);
    $r = limited_string($text,150);
    $description = $r['displayed'];

    $output .=     "<item><title>".$title."</title>
                    <link>".$url."</link>
                    <description>".$description."</description>
                  </item>";
}
#RSS-Feed schließen und ausgeben
$output .= "</channel></rss>";
echo $output;

#Verbindung zur Datenbank schließen
mysql_close($ver);

?>


ansonsten suppi =)

EDIT:
hab deinen Code ebend verbessert leute sind doch heutzutage Faul :roll:
War noch ein Fehler drine jetzt läuft er :)
Dieser Beitrag wurde insgesamt 5 mal editiert. Das letzte mal 18.05.2007, 00:28 von KingGO.

 
Kein neuer Beitrag VaiT , 17.05.2007, 23:56
Beitrag #3   

IP: n/a
Rang: * * * * * O O
Registrierung: 27.08.2006, 22:45
Homepage: http://www.vait.de
Wohnort: Kassel
 

Supporter mit 438 Punkte, 348 Beiträge
ja ginge natürlich auch, letztlich ist es aber wurscht, ob die die config includest oder die zwei
Zeilen dahin schreibst ;-)
Trotzdem danke für den Hinweis und das Lob ^^

 
Kein neuer Beitrag KingGO , 18.05.2007, 00:18
Beitrag #4   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
Nachtrag:

Icon in URL anzeige hinzufügen.

Code:
1
<link rel="alternate" type="application/rss+xml" title="Netcode Board - Aktuelle Themen" href="http://www.netcode.sunsonic.de/Board/rss.php" />


In die Board/themes/(euer TPL)/templates/structure.htm

Oben im Code wo die <meta... /> sind...

Meine sieht dan so aus.

Code:
1
2
3
4
5
6
7
8
9
<!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">
<head>
<title>{forum_title} {page_title}</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<link rel="alternate" type="application/rss+xml" title="Netcode Board - Aktuelle Themen" href="http://www.netcode.sunsonic.de/Board/rss.php" />
<meta http-equiv="Content-Style-Type" content="text/css" />
<meta http-equiv="Content-Script-Type" content="text/javascript" />
<script type="text/javascript" language="Javascript" src="{root}src/functions.js"></script>


Have Fun ;)

Natürlich müsst Ihr den Text durch euern ersetzen ;)

 
Kein neuer Beitrag Nils , 18.05.2007, 07:49
Beitrag #5   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
Wow, gestern war Mod-Tag, wa? *g*
Danke für das Script. Ist sicherlich nützlich für viele.

Wobei ich hier auch nochmal die Anmerkung machen möchte, die ich schon im Forum "Ihre Meinung"
genannt habe: Mit dem RSS-Feed kann jeder alle Themen auslesen, egal ob er die Berechtigung dazu
hat oder nicht. D.h. wenn jemand den Zugriff zum Board oder zu einzelnen Foren beschränkt hat,
sollte er überlegen ob er das Script einsetzen möchte.

mfg Nils

 
Kein neuer Beitrag KingGO , 18.05.2007, 09:27
Beitrag #6   

IP: n/a
Rang: * * * * * O O
Registrierung: 17.05.2007, 20:49
Homepage: http://www.donotart.de
Wohnort: Magdeburg
 

Supporter mit 391 Punkte, 307 Beiträge
das jetzt deine Aufgabe das auszubessern mit dem Rechtesystem muss ich erstma klar kommen :roll:

 
Kein neuer Beitrag Nils , 18.05.2007, 09:35
Beitrag #7   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
KingGO hat folgendes geschrieben:
das jetzt deine Aufgabe das auszubessern mit dem Rechtesystem muss ich erstma klar kommen :roll:
hehe, ja, ich werde mir da auf jeden Fall nochmal Gedanken machen ob und wie man das am Besten
umsetzt.

mfg Nils

 
Kein neuer Beitrag Nils , 21.08.2007, 22:20
Beitrag #8   

IP: n/a
Rang: * * * * * * *
Registrierung: 01.07.2003, 18:55
Homepage: http://www.script-solution.de
Wohnort: Marburg
 

Forum-Gott mit 7594 Punkte, 7360 Beiträge
Hallo,

noch ein Hinweis für v1.30: Hier muss Zeile 38 folgendermaßen aussehen:
Code:
1
$output =    '<?xml version="1.0" encoding="UTF-8"?>'."
Denn die neue Version arbeitet ja mit UTF-8 :-)

mfg Nils
Dieser Beitrag wurde insgesamt 2 mal editiert. Das letzte mal 21.08.2007, 22:22 von Nils.

n/a n/a 1     ( Anzeige: 1 - 8 , Gesamt: 8 ) n/a n/a
User in diesem Thema: 0 Registrierte, 0 Versteckte, 1 Gast, 0 Bots
Keine
Thema-Aktionen:

Toggle Ähnliche Themen zu "RSS-Feed in das Board integrieren"
  Antworten Aufrufe Themeneröffnung Letzter Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, verschoben
  RSS 1 928 11.01.2012, 10:33
Von: Mars
11.01.2012, 11:47
Von: Nils Zum letzten Beitrag
Keine neuen Beiträge, wichtig Keine neuen Beiträge, 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
Thema Wichtig: Der neue Verbesserungs-Thread für Boardsoluti ...   Seiten 1 2 ] 29 25185 21.09.2010, 12:54
Von: KingGO
16.11.2011, 22:38
Von: Rafioso Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, verschoben
  [WIP] [REL v2.00] [WIP v2.10] BoardSolution 1 ...   Seiten 1 2 3 ] 40 39061 29.01.2010, 02:53
Von: Rafioso
26.10.2011, 22:03
Von: Rafioso Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, kein 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
Thema Problem in mi Board 2 1374 25.08.2011, 08:46
Von: ertys
25.08.2011, 23:53
Von: ertys Zum letzten Beitrag
Keine neuen Beiträge, nicht wichtig Keine neuen Beiträge, 'heißes Thema'
Keine neuen Beiträge, offen Keine neuen Beiträge, nicht verschoben
Thema Boardsolution v1.43 3 6643 28.03.2011, 19:49
Von: Nils
31.03.2011, 07:19
Von: langer Zum letzten Beitrag
  • 0.160716 Sek., 11 DB-Zugriffe, 6.362 MiB
  • Boardsolution v1.43 | © Nils Asmussen 2003-2009
Valid XHTML and CSS © 2003 - 2009 script-solution.de, Powered by Joomla!