Beiträge: 68
Themen: 11
Registriert seit: 10.05.2006
@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
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
18.12.2007, 15:45
(Dieser Beitrag wurde zuletzt bearbeitet: 18.12.2007, 15:45 von Michael.)
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.
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
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.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 131
Themen: 15
Registriert seit: 19.01.2006
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!
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>"; ?>
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
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>";
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 131
Themen: 15
Registriert seit: 19.01.2006
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!
Beiträge: 131
Themen: 15
Registriert seit: 19.01.2006
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&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: Warning: main() [function.main]: open_basedir restriction in effect. File(./../mybb/inc/init.php) is not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmp) in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8
Warning: main(./../mybb/inc/init.php) [function.main]: failed to open stream: Operation not permitted in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8
Warning: main() [function.main]: open_basedir restriction in effect. File(./../mybb/inc/init.php) is not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmp) in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8
Warning: main(./../mybb/inc/init.php) [function.main]: failed to open stream: Operation not permitted in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8
Warning: main() [function.main]: open_basedir restriction in effect. File(./../mybb/inc/init.php) is not within the allowed path(s): (/srv/www/vhosts/cyberdyne-sky.net/httpdocs:/tmp) in /srv/www/vhosts/cyberdyne-sky.net/httpdocs/php/news.php on line 8
Warning: main(./../mybb/inc/init.php) [function.main]: failed to open stream: Operation 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!
Beiträge: 208
Themen: 35
Registriert seit: 31.07.2007
MyBB-Version: 1.8.14
24.12.2007, 12:25
(Dieser Beitrag wurde zuletzt bearbeitet: 24.12.2007, 12:30 von CKOne.)
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.
Man kann nicht alles haben - zumindest nicht gleichzeitig.
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
Das ist jetzt geraten, aber versuche mal die Leerzeichen vor den \n zu entfernen. Wenn das nicht hilft entferne mal alle \n.
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 208
Themen: 35
Registriert seit: 31.07.2007
MyBB-Version: 1.8.14
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.
Man kann nicht alles haben - zumindest nicht gleichzeitig.
|