Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.37 veröffentlicht (04.11.23)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
PHP in Templates
#11
Im Grunde fast genauso. Du musst die Variable, die du im Template benutzen willst, mit Inhalt füllen, bevor das Template geladen und die Variablen ersetzt werden.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#12
Also ich hab jetzt folgendes:

PHP-Code:
ob_start();

echo 
'<table border="0" cellspacing="1" cellpadding="3" class="tborder"><tr>';

$first $db->query("SELECT * FROM `".TABLE_PREFIX."gallery_pic` ORDER BY `ID_PICTURE` DESC LIMIT 3");

while(
$list $db->fetch_array($first)) {

$thumb $list['thumbfilename'];
$picid $list['ID_PICTURE'];

echo 
'<td rowspan="2" class="trow1" align="center" width="120"><a href="http://warriors.pytalhost.de/forum/ezgallery.php?action=view&id='.$picid.'"><img src="http://warriors.pytalhost.de/forum/gallery/'.$thumb.'" /></a></td>
<td class="trow2"><span class="smalltext">'
my_date($mybb->settings['dateformat'],$list['date']) .'</span></td>';
}

echo 
"</tr><tr>";

$first $db->query("SELECT * FROM `".TABLE_PREFIX."gallery_pic` ORDER BY `ID_PICTURE` DESC LIMIT 3");

while(
$list $db->fetch_array($first)) {
$id $list['ID_MEMBER'];
$user get_user($id);
$username format_name($user['username'],$user['usergroup'],$user['displaygroup']);
echo 
'<td class="trow1"><span class="smalltext">Von <a href="http://warriors.pytalhost.de/forum/member.php?action=profile&uid='.$id.'">'.$username.'</a></span></td>';
}

echo 
"</tr></table>";

$new_pics ob_get_contents();
ob_end_clean(); 

Fehlermeldung:

Fatal error: Call to a member function query() on a non-object in /forum/global.php on line 16
Zitieren
#13
Füge es über dieser Zeile ein:
PHP-Code:
// Load Main Templates and Cached Templates 
Anstatt echo() zu benutzen, musst du dann natürlich wieder alles in eine Variable schreiben.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Zitieren
#14
(30.10.2010, 19:42)Michael schrieb: Füge es über dieser Zeile ein:
PHP-Code:
// Load Main Templates and Cached Templates 
Anstatt echo() zu benutzen, musst du dann natürlich wieder alles in eine Variable schreiben.

Okay. Keine Fehlermeldung mehr..
Nur: Wie gebe ich die Variable anschließend im Template aus?
Zitieren
#15
Einfach reinschreiben {$variable}. Die muss allerdings vor dem Aufruf des Templates definiert werden.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren
#16
Es funktioniert.
Ich danke euch. :3
Zitieren
#17
Nochmal eine Frage hierzu.

Ich hab jetzt ähnliches wieder. Aber diesmal nach selben Schema und an selber Position im Code.

PHP-Code:
ob_start();
if((int)
date("n") == 12 && (int)date("d") >= || (int)date("n") == 1) {
$anzahl 0;
$uid $mybb->user['uid'];
$present $db->query("SELECT * FROM `".TABLE_PREFIX."geschenksys` WHERE gesuid='$uid' && looktime IS NULL");
while(
$list $db->fetch_array($present)) {
  
$anzahl++;
}
if(
$anzahl 0) {
$presentmeldung '<div class="pm_alert" id="comment_notice">
    <div>
        <a href="Geschenk-System.php?show=1" title="Dein Tannenb&auml;umchen">Unter deinem Tannenb&auml;umchen liegen '
.$anzahl.' unge&ouml;ffnete(s) Geschenk(e)</a>
    </div>
</div>'
;
}
}
$presents ob_get_contents();
ob_end_clean(); 

Allerdings wird so nie etwas angezeigt... Und das liegt nicht an den Bedingungen.

Und im Template natürlich {$presents}.

Gruß
Zitieren
#18
Du kannst dir das ganze ob-Zeug sparen, wenn du kein echo benutzt. Du hast doch jetzt schon eine volle Variable?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Zitieren