Vorlage für in phpBB eingebundene Seiten

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

http://de.php.net/manual/de/language.ba ... ax.phpmode

Alternativ den Artikel nochmal lesen, da stehts auch drin.
KB:knigge
Benutzeravatar
wartek
Mitglied
Beiträge: 883
Registriert: 31.05.2005 18:52
Wohnort: Wien

Beitrag von wartek »

Hallo

leider ist das doch nicht so trivial - aber eigentlich doch.

if (){
}

können natürlich so nicht in den html Code geschrieben werden. html fängt damit nichts an, d.h er kann die bedingung nicht interpretieren und meldet einen parse error.

Diese Teile sind im <table> als <?php ... ?> einzubetten.

Also z.B.

Code: Alles auswählen

<table>
<tr>
<td>
<?php
if ( $userdata['session_logged_in'] )
{
echo "Text für angemeldete Bentzer";
}
else
{
echo "Text für nicht angemeldete User";
}
?>
</td>
</tr>
</table>
Eigentlich sind diese Teile unsauber, da sie php-Applikationscodes in die html-Teile einpflegen - das ist etwas phpBB-untypisch. Aber bitte. Nachteile dieses Codes ist die Interpretation der Zeichen die dann z.B. als \", \n etc. geschrieben werden müssen

Da der Coder aber $userdata['session_logged_in'], also ein Teil der phpBB-Funktionen, voraussetzt, sehe ich keinen Grund die
<!-- BEGINN ... nicht eben so gut einbauen zu können. Und schöner ist der Code auch noch. Ist natürlich ansichtssache.

wartek
Computers are not intelligent - they only think they are.
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

wartek hat geschrieben:Da der Coder aber $userdata['session_logged_in'], also ein Teil der phpBB-Funktionen, voraussetzt, sehe ich keinen Grund die
<!-- BEGINN ... nicht eben so gut einbauen zu können. Und schöner ist der Code auch noch. Ist natürlich ansichtssache.
Dazu müsste man sich aber erstmal mit dem Template-System befassen. Und da er offenbar noch nicht mal die einfachsten Grundlagen von PHP kennt, wird er es damit wohl sehr schwer haben.
KB:knigge
Benutzeravatar
wartek
Mitglied
Beiträge: 883
Registriert: 31.05.2005 18:52
Wohnort: Wien

Beitrag von wartek »

Pyramide hat geschrieben:Dazu müsste man sich aber erstmal mit dem Template-System befassen. Und da er offenbar noch nicht mal die einfachsten Grundlagen von PHP kennt, wird er es damit wohl sehr schwer haben.
Und wenn er sich damit nicht beschäftigt ist es ja ein leichtes die $userdata['session_logged_in']-Funktion einzubinden. Die Funktion kommt ja nicht von allein in den html-Code geflogen weil man ihn gerade braucht.
Da musst schon noch die include() bzw. include_once() informieren. Sorry Links zu Seiten die echo"" in <?php ?> erklären, ist hier zu wenig.

wartek
Computers are not intelligent - they only think they are.
Benutzeravatar
schorsch
Mitglied
Beiträge: 27
Registriert: 09.01.2004 13:58
Kontaktdaten:

Beitrag von schorsch »

hab es jetzt so dann gehts!

<?
if ( $userdata['session_logged_in'] )
{
echo" Code, wenn ein Benutzer angemeldet ist <-- hier schreibst du halt das hin was ausgegeben wird, wenn der Benutzer angemeldet ist";
}
else
{
echo" Code, wenn kein Benutzer angemeldet ist <-- und hier dann den, wenn der benutzer nicht angemeldet ist ";
}
?>
dann sieht man den text und es kommt kein parse erorr

und bei nem link fals es jemand wissen will der mal das gleiche problem hat wie ich isses dann so

echo"<a href='http://www.url.de'>linkname</a>";
Benutzeravatar
Pyramide
Ehrenadmin
Beiträge: 12734
Registriert: 19.04.2001 02:00
Wohnort: Meschede

Beitrag von Pyramide »

Wenn man eh keinen PHP-Code verwendet, ist es sinnvoller und einfacher, den PHP-Bereich einfach zu verlassen (deshalb hatte ich ja auch auf die Seite verlinkt, wo das Beschrieben ist):

Code: Alles auswählen

if ($userdata['session_logged_in']) { ?>
Lalelu
<?php } else { ?>
Dumdudum
<?php }
KB:knigge
Antworten

Zurück zu „Coding & Technik“