MyBB.de Forum

Normale Version: neueste themen auf externe seite anzeigen lassen???
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 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
@Dragon: Wo genau muss denn die Datei auf dem Server hin? Doch in das Verzeichnis des Forums, oder?

Dann erhalte ich:

Zitat:Direct initialization of this file is not allowed.

Please make sure IN_MYBB is defined.

Gruß, Jens
Dass meine Lösung nicht funktioniert liegt daran, dass folgender Code bei dir doppelt vorhanden ist:
PHP-Code:
// Letzte Themen auslesen
$query mysql_query ("SELECT subject,tid FROM ".$prefix."threads WHERE visible='1' $unviewwhere ORDER BY tid DESC LIMIT 0,".$limit.""); 
Entferne das erste Vorkommen und passe den zweiten Query dann wie geschildert an.
lenkradschloss schrieb:@Dragon: Wo genau muss denn die Datei auf dem Server hin? Doch in das Verzeichnis des Forums, oder?

Dann erhalte ich:

Zitat:Direct initialization of this file is not allowed.

Please make sure IN_MYBB is defined.

Gruß, Jens
Du willst die Themen auf einer externen Seite haben. Da hilft dir die Datei im Forum nicht. Wink
Michael schrieb:Dass meine Lösung nicht funktioniert liegt daran, dass folgender Code bei dir doppelt vorhanden ist:
PHP-Code:
// Letzte Themen auslesen
$query mysql_query ("SELECT subject,tid FROM ".$prefix."threads WHERE visible='1' $unviewwhere ORDER BY tid DESC LIMIT 0,".$limit.""); 
Entferne das erste Vorkommen und passe den zweiten Query dann wie geschildert an.

Wunderbar, jetzt funktioniert es! Herrlich... DANKE! Smile

Nur noch ein Problem: Umlaute werden nicht richtig angezeigt: http://www.cyberdyne-sky.net/

Da ich das Problem auch in einer RSS-Feed Abfrage habe: liegt das an meiner Seite generell oder oder kann man da im Script etwas verändern?

Das jetzige, funktionstüchtige Scirpt lautet:

PHP-Code:
<?php
// Daten für Verbindung zur Datenbank
$dbhost "localhost";
$dbuser "changeme";
$dbpassword "changeme";
$dbdatabase "changeme";

// Präfix
$prefix "mybb_";

// URL zum Forum
$url "http://www.cyberdyne-sky.net/mybb/";

// Anzahl der Themen
$limit "5";

// Verbindung zur Datenbank aufnehmen
$db mysql_connect($dbhost,$dbuser,$dbpassword) or die ("Verbindung fehlgeschlagen");  
mysql_select_db($dbdatabase,$db);

// Letzte Themen auslesen
$query mysql_query ("SELECT subject,tid FROM ".$prefix."threads WHERE visible='1' AND fid NOT IN (25,3,5,61,54,60,13,58) ORDER BY tid DESC LIMIT 0,".$limit."");

// Überschrift
echo "<table style=\"border-style:solid;border-width:2\" width=\"100%\" cellspacing=\"0\" id=\"rahmen_farbe\">
       <tr>
        <td id=\"hintergrund_menue\"><font id=\"text_menue\"><center>- <a href=\"index.php?m=newspost\">Neueste Themen im Forum</strong></a> -</center></font></td>
       </tr>
        <tr>
         <td>
          <center>"
;

// Liste starten
echo "<ul>";

while (
$newest_threads mysql_fetch_array($query)) 
    {
    echo 
"<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".$newest_threads['subject']."</a></li>";
    }

// Liste schließen
echo "</ul>
           </font>
          </center>
         </td>
        </tr>
       </table>"
;
?>
Ersetze
PHP-Code:
echo "<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".$newest_threads['subject']."</a></li>"
mal durch:
PHP-Code:
echo "<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".htmlentities(utf8_decode($newest_threads['subject']))."</a></li>"
Michael schrieb:Ersetze
PHP-Code:
echo "<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".$newest_threads['subject']."</a></li>"
mal durch:
PHP-Code:
echo "<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".htmlentities(utf8_decode($newest_threads['subject']))."</a></li>"

Astrein, es läuft endlich so wie ich es wollte. Vielen Dank Euch allen! Smile
Hallo zusammen,

ich würde doch gerne eine ausführlichere Foren-Vorschau einbinden. Es gab ja hier eine Lösung, die auch den letzten Beitragsverfasser anzeigt.

Rookie-Doo schrieb:
PHP-Code:
<?php

// Anzahl der Themen
$limit "5";

// Überlange Themen kürzen (0 = Nein, x = Anzahl der auszugebenden Zeichen)
$length "0";


require(
"./../mybb/inc/init.php");
### Konfiguration ###

//Nicht sichtbare Foren ausschließen
$unviewable get_unviewable_forums();
if(
$unviewable)
{
$unviewwhere "AND t.fid NOT IN (".$unviewable.")";


// Head ausgeben
echo "<table width=\"100%\" border=\"0\" cellpadding=\"3\" cellspacing=\"0\"><tr><td colpan=\"4\"><strong></strong></td></tr><tr><td>Forum</td><td>Benutzer</td><td>Datum</td><td>Thema</td></tr>";

// Themen aus Datenbank holen
$query $db->query ("SELECT subject,username,uid,tid,fid,dateline FROM ".TABLE_PREFIX."threads WHERE visible='1' $unviewwhere ORDER BY tid DESC LIMIT 0,".$limit."");
while(
$threads $db->fetch_array($query))
{
// Forum ermitteln
$query2 $db->query ("SELECT name FROM ".TABLE_PREFIX."forums WHERE fid = '".$threads['fid']."'");
$forums $db->fetch_array($query2);

// Betreff kürzen?
if ($length != 0)
{
    if (
strlen($threads['subject']) > $length
    {
    
$threads['subject'] = substr($threads['subject'],0,$length) . "...";
    }
}

// Daten ausgeben
echo "<tr><td><a href=\"".$mybb->settings['bburl']."/forumdisplay.php?fid=".$threads['fid']."\" target=\"_blank\">".htmlentities($forums['name'])."</a></td>
<td><a href=\""
.$mybb->settings['bburl']."/member.php?action=profile&amp;uid=".$threads['uid']."\" target=\"_blank\">".htmlentities($threads['username'])."</a></td>
<td>"
.htmlentities(mydate($mybb->settings['dateformat'], $threads['dateline'])).", ".htmlentities(mydate($mybb->settings['timeformat'], $threads['dateline']))."</td>
<td><a href=\""
.$mybb->settings['bburl']."/showthread.php?tid=".$threads['tid']."\" target=\"_blank\">".htmlentities($threads['subject'])."</a></td></tr>";
}

// Footer ausgeben
echo "</table>";
?>

Jedoch erhalte ich dort folgende Fehlermeldung:

PHP-Code:
Warningmain() [function.main]: open_basedir restriction in effectFile(./../mybb/inc/init.phpis not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmpin /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Warning
main(./../mybb/inc/init.php) [function.main]: failed to open streamOperation not permitted in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Warning
main() [function.main]: open_basedir restriction in effectFile(./../mybb/inc/init.phpis not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmpin /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Warning
main(./../mybb/inc/init.php) [function.main]: failed to open streamOperation not permitted in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Warning
main() [function.main]: open_basedir restriction in effectFile(./../mybb/inc/init.phpis not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmpin /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Warning
main(./../mybb/inc/init.php) [function.main]: failed to open streamOperation not permitted in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8

Fatal error
main() [function.require]: Failed opening required './../mybb/inc/init.php' (include_path='.:.:/usr/share/php'in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8 

Line 8 ist:
PHP-Code:
require("./../mybb/inc/init.php"); 

Welche Rechte muss diese init.php haben? Reicht 644?

Nochmal zum Verständnis der Pfade, nicht, dass die Pfadangabe irgendwie falsch ist: root/index.php ruft root/php/news.php auf, letztere soll root/mybb/inc/init.php aufrufen.

Vielen Dank im Voraus und besinnliche Feiertage! Smile
Hallo.

Ich wollte in meine Homepage auch die neusten Themen aus meinem Forum einbauen. Ich hab deshalb den Code auch eingefügt. Allerdings erscheint statt der Themen folgender Text:

Zitat:- Neueste Themen im Forum -
\n"; // Liste starten echo "

* \n"; while ($newest_threads = mysql_fetch_array($query)) { echo "".htmlentities(utf8_decode($newest_threads['subject']))."
\n"; } // Liste schließen echo "

\n"; ?>

Wo liegt da mein Fehler?

Der Code, mit dem ich das eingefügt habe, sieht so aus:
Code:
<?php
// Daten für Verbindung zur Datenbank
$dbhost = "localhost";
$dbuser = "---";
$dbpassword = "---";
$dbdatabase = "---";

// Präfix
$prefix = "mybb_";

// URL zum Forum
$url = "http://www.fieselschweif.de";

// Anzahl der Themen
$limit = "5";

// Verbindung zur Datenbank aufnehmen
$db = mysql_connect($dbhost,$dbuser,$dbpassword) or die ("Verbindung fehlgeschlagen");  
mysql_select_db($dbdatabase,$db);

// Letzte Themen auslesen
$query = mysql_query ("SELECT subject,tid FROM ".$prefix."threads WHERE visible='1' AND fid NOT IN (2) ORDER BY tid DESC LIMIT 0,".$limit."");

// Überschrift
echo "<table style=\"border-style:solid;border-width:2\" width=\"100%\" cellspacing=\"0\">
       <tr>
        <td><center>- <a href=\"index.php?m=newspost\">Neueste Themen im Forum</strong></a> -</center></td>
       </tr>
        <tr>
         <td>
          <center> \n";

// Liste starten
echo "<ul> \n";

while ($newest_threads = mysql_fetch_array($query))
    {
    echo "<li><a href=\"".$url."/showthread.php?tid=".$newest_threads['tid']."\" target=\"_blank\">".htmlentities(utf8_decode($newest_threads['subject']))."</a></li> \n";
    }

// Liste schließen
echo "</ul>
           </font>
          </center>
         </td>
        </tr>
       </table> \n";
?>
(Die Zugangsdaten zur Datenbank hab ich natürlich zensiert.)

Ich hoffe, es kann mir jemand hier helfen.


Frohe Weihnachten wünscht
CKOne. Smile
Das ist jetzt geraten, aber versuche mal die Leerzeichen vor den \n zu entfernen. Wenn das nicht hilft entferne mal alle \n.
Ohne hab ich das auch schon probiert. Ich hab die ja auch nur eingefügt, weil ich dachte, dass es vielleicht daran liegen könnte.
Seiten: 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