MyBB.de Forum
Message auslesen - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Message auslesen (/thread-27118.html)



Message auslesen - Lukαs - 21.12.2012

Hallo,
So sieht meine Abfrage momentan aus:

PHP-Code:
$query $db->query(" SELECT t.*, u.username
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
    WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed  NOT LIKE 'moved|%' AND t.fid IN (3,4,5,6,9,69,7,11,12,13,14,72,17,15,37,39,38,40) AND usergroup LIKE '8'
    ORDER BY t.firstpost DESC
    LIMIT 0, "
.$mybb->settings['overview_max']); 


Wie bekomme ich nun noch den Inhalt des ersten Beitrages der Themen, also MESSAGE aus mybb_posts ?


Hoffe auf schnelle Hilfe


RE: Message auslesen - Jockl - 21.12.2012

Wenn die nächste Zeile
PHP-Code:
$result $db->fetch_array($query); 
lautet, dann müsste die pid des ersten Beitrages mit
PHP-Code:
$message_pid $result['firstpost']; 
auszulesen sein.

Für den Inhalt müsstest Du auch die posts-Tabelle auslesen.


RE: Message auslesen - Lukαs - 21.12.2012

PHP-Code:
$query $db->query(" SELECT t.*, u.username
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
    WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed  NOT LIKE 'moved|%' AND t.fid IN (3,4,5,6,9,69,7,11,12,13,14,72,17,15,37,39,38,40) AND usergroup LIKE '8'
    ORDER BY t.firstpost DESC
    LIMIT 0, "
.$mybb->settings['overview_max']);
            echo 
'';

          while(
$row $db->fetch_array($query))  
{    
  if(
$mybb->user['uid'] >= 0)

{
         
             
            echo 


Habe jetzt noch den Rest hinzugefügt, bis zum Inhalt, der nach dem " dann hinter dem echo folgt.

Wie lese ich eine zweite Tabelle aus?, das ist auch eines meiner Hauptprobleme, warum ich nicht zum Ziel komme.


RE: Message auslesen - Falkenauge Mihawk - 21.12.2012

Mit JOIN, was du ja bereits machst.

Müsste so gehen:
PHP-Code:
"SELECT t.*, u.username
    FROM "
.TABLE_PREFIX."threads t
    LEFT JOIN "
.TABLE_PREFIX."users u ON (u.uid=t.uid)
    LEFT JOIN "
.TABLE_PREFIX."posts p ON p.pid=t.firstpost
    WHERE 1=1 
$unviewwhere AND t.visible='1' AND t.closed  NOT LIKE 'moved|%' AND t.fid IN (3,4,5,6,9,69,7,11,12,13,14,72,17,15,37,39,38,40) AND usergroup LIKE '8'
    ORDER BY t.firstpost DESC
    LIMIT 0, "
.$mybb->settings['overview_max'



RE: Message auslesen - Lukαs - 21.12.2012

Das klappt, aber ich möchte ja nicht die ID des Beitrages auslesen, sondern den Beitrag selber, also den Text den der Verfasser geschrieben hat, wäre dankbar, wenn du das noch ändern könntest.

Auslesen tue ich es mit: {$row['firstpost']}


RE: Message auslesen - Jockl - 21.12.2012

Mit "firstpost" hast Du die pid des Beitrages. Nun musst Du nur nach der pid in der Tabelle mybb_posts suchen und Dir den Inhalt "message" ausgeben lassen. Das heist, Du musst in die Abfrage noch p.message einbauen.


RE: Message auslesen - Lukαs - 21.12.2012

Klappt perfekt.
Wiedereinmal perfekter Support, vielen Dank! Smile