kostenloser Webspace werbefrei: lima-city


Unterschied zwischen *.php und *.tpl ?

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    n********r

    Hi,

    w?rde gerne ein Forum programmieren.
    Aber ich will gerne so machen das meine User die Styles ver?ndern k?nnen.
    Meine Frage ist jetzt ist es besser mti php oder mit tpl Endungen zu arbeiten und was ist der Unterschied?
    Danke
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. a******9

    wenn die user ihre eigenen styles hochladen k?nnen, w?re tpl besser, weil die user sonst php code einschmuggeln k?nnten ;).
    das forum selbst muss nat?rlich als endung .php haben, da es sonst nich soo gut funktioniert. (gar nich xD)
  4. Autor dieses Themas

    n********r

    Und was genau steht in tpl Datein drinne?
    Muss ich angsat haben, dass sie mir den den Code versauen k?nnen?
  5. Es ist doch bei einem Template-System komplett egal, welche Endung die Template-Dateien haben. Wichtig ist, was du daraus machst. Wenn du nicht richtig f?r die Sicherheit sorgst, kann das >>p?se<< enden. :wink: Mann kann ja auch einfach eine .txt Datei nehmen. Der Inhalt wird ja einfach nur von dem Parser durchlaufen und mit Inhalt aus einer Datenbank oder so gef?llt. Es w?re nur schon zu besseren Erkennung der Template-Dateien besser, wenn du sie mit *.tpl benennen w?rdest. Au?erdem w?rdest du dir damit viel Arbeit ersparen f?r die Sicherheit zu sorgen. ;)

    Edit:
    Es kommt immer darauf an, wie du es machst... -.- Ich glaube du solltest dich erstmal mehr mit diesem Thema auseinandersetzen, vor allem mit dem Thema Sicherheit, bevor du ein eigenes Forum programmieren willst. -.-

    Grunds?tzlich funktionieren Template-Systeme so, dass man den Code komplett vom Design trennt. D.h. man hat eine Art Grundger?st in einer Template-Datei und dann hat man noch ausf?hrenden Code, der zum Beispiel Posts aus der Datenbank ausliest. Der "Template-Parser" f?gt das dann zusammen. Diesen Parser musst du dir allerdings selbst schreiben. Meistens ist es so, dass man einfach Schl?sselbegriffe in der Template-Datei durch Inhalt ersetzen l?sst und das dann ausgegeben wird.

    Beitrag ge?ndert am 3.05.2006 14:47 von i-spacke
  6. Autor dieses Themas

    n********r

    Also das habe ich aus einer bbcode.tpl Datei:

    <!-- BEGIN ulist_open --><ul><!-- END ulist_open -->
    <!-- BEGIN ulist_close --></ul><!-- END ulist_close -->

    <!-- BEGIN olist_open --><ol type="{LIST_TYPE}"><!-- END olist_open -->
    <!-- BEGIN olist_close --></ol><!-- END olist_close -->

    <!-- BEGIN listitem --><li><!-- END listitem -->

    <!-- BEGIN quote_username_open --><div align="center"><table width="90%" align="center" cellspacing="1" cellpadding="2" border="0" class="quote">
    <tr>
    <td class="quote_user" align="left">{USERNAME} {L_WROTE}:</td>
    </tr>
    <tr>
    <td class="quote" align="left"><!-- END quote_username_open -->
    <!-- BEGIN quote_open --><div align="center"><table width="90%" cellspacing="1" cellpadding="2" border="0" align="center" class="quote">
    <tr>
    <td class="quote_user" align="left">{L_QUOTE}:</td>
    </tr>
    <tr>
    <td class="quote" align="left"><!-- END quote_open -->
    <!-- BEGIN quote_close --></td>
    </tr>
    </table></div><!-- END quote_close -->

    <!-- BEGIN code_open --><div align="center"><table width="90%" align="center" cellspacing="1" cellpadding="2" border="0" class="code">
    <tr>
    <td class="code_header" align="left">{L_CODE}:</td>
    </tr>
    <tr>
    <td class="code" align="left"><!-- END code_open -->
    <!-- BEGIN code_close --></td>
    </tr>
    </table></div><!-- END code_close -->

    <!-- BEGIN b_open --><span style="font-weight: bold"><!-- END b_open -->
    <!-- BEGIN b_close --></span><!-- END b_close -->

    <!-- BEGIN u_open --><span style="text-decoration: underline"><!-- END u_open -->
    <!-- BEGIN u_close --></span><!-- END u_close -->

    <!-- BEGIN i_open --><span style="font-style: italic"><!-- END i_open -->
    <!-- BEGIN i_close --></span><!-- END i_close -->

    <!-- BEGIN color_open --><span style="color: {COLOR}"><!-- END color_open -->
    <!-- BEGIN color_close --></span><!-- END color_close -->

    <!-- BEGIN size_open --><span style="font-size: {SIZE}px; line-height: normal"><!-- END size_open -->
    <!-- BEGIN size_close --></span><!-- END size_close -->

    <!-- BEGIN img --><img src="{URL}" border="0" /><!-- END img -->

    <!-- BEGIN url --><a href="{URL}" target="_blank">{DESCRIPTION}</a><!-- END url -->

    <!-- BEGIN email --><a href="mailto:{EMAIL}">{EMAIL}</a><!-- END email -->


    Also wenn ich das jetzt richtig verstehe, gibt es Hauptfunkrion die kann man nicht ?ndern. Und die tpl sind einfach nur f?r die Ausgabe zust?ndig.
    Habe ich das richtig verstanden?
    Danke
  7. Also in diesem Fall ist es wahrscheinlich so, dass je nachdem was gebraucht wird die passenden Tags aus der Datei "gezogen" werden.
    Also der Parser liest ein, was er braucht (dies geschieht mit Hilfe der Kommentare) und dann ersetzt er zum Beispiel {USERNAME} mit dem Namen und gibt das dann aus oder zur Ausgabe frei. (preg_replace('`\{USERNAME\}`Us, $username, $text) zum Beispiel.)
    :wink:

    Das einzige, was in so einem Fall eigentlich passieren kann ist, dass das Design bei dem jeweiligen Anwender durch irgendwelche flaschen Template-Dateien nicht richtig angezeigt wird, aber das ist ja dann ihr Problem und nicht deins. ;)
  8. Autor dieses Themas

    n********r

    Wie kann ein Phraser denn an Komentaren erkennen wo sein Tag ist?
    Und woher wei? er das er bei {COLOR} die Farbe rein machen muss?
  9. Um das herauszufinden solltest du PHP lernen... -_____-

    Sagen wir mal du hast einen Text. In diesem text kommt ein BBCode wie zum Beispiel Text[/b ] vor. Der Parser findet diesem BBCode. Dann nimmt er einfach den Inhalt und packt ihn hier zwischen.

    <!-- BEGIN b_open --><span style="font-weight: bold"><!-- END b_open -->
    <!-- BEGIN b_close --></span><!-- END b_close -->

    Wie man das ganze anstellt ist eigentlich relativ einfach, aber wenn du das noch nicht kannst, dann solltest du das auch nicht probieren bevor du es gut kannst. Am besten w?re es, wenn man eine Template-Parser-Klasse schreibt, aber naja...

    P.s: Wo er was reinmachen muss, wei? er zum Beispiel durch solch einen Befehl.
    preg_replace('`{COLOR}`Us, $color, $text);

    http://www.php.net/manual/de/function.preg-replace.php

    Edit: Leerzeichen zu dem BBCode hinzugef?gt.

    Beitrag ge?ndert am 3.05.2006 15:10 von i-spacke
  10. Autor dieses Themas

    n********r

    Achja sorry, so habe ich auch meinen BBCode Funktion geschrieben.
    Klar.
    Vergessen sorry...:biggrin:
  11. An f?r sich w?rde es sich auch anbieten den Usern einfach die M?glichkeit zu geben eigene .css Dateien einzubinden.
    CSS kann ein Layout total verwandeln, es ist also ziehmlich m?chtig und trotzdem absolut ungef?hrlich f?r den Server.
    Entscheident bei der Programmierung des Forums ist dann nat?rlich, dass die Attribute id="" und class="" h?ufig benutzt werden, damit man mit CSS leicht darauf zugreifen kann.
    Eventuell k?nnte man es auch in Erw?gung ziehen den Usern das Einbinden von .js Dateien zu erm?glichen.
  12. JS einbinden zu lassen w?re zu gef?hrlich. Das mit dem CSS kann man sehr gut mit Templates kombinieren und eigentlich wird das auch gemacht. Templates sind ja nur daf?r da, Felxilibit?t zu garantieren und Code von HTML zu trennen. CSS ist ja dann einfach nur einen weitere Methode die Seite zu gestalten.

    Aber mal nebenbei, wenn ich eine Seite mache, dann m?chte ich damit doch auch etwas bestimmtes bewirken, oder? Warum sollte ich es dann zulassen, dass User ihren eigenen Style hochladen k?nnen. Klar kann man denen vielleicht ein paar zu Verf?gung stellen, aber naja....
  13. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!