tutorials.de Buch-Aktion 05/2012
  • PHP RSS-Feed

    von Yaslaw Veröffentlicht: 23.11.09 11:01
    Seitenaufrufe: 656 
    [PHP] three tier architecture

    Datenlayer
    Als ersts brauchen wir ein bisschen Code, der uns Daten zur Verfügung stellt. Hier mal was ganz einfaches
    AgentInfo.inc
    PHP-Code:
    <?php
    class AgentInfo{
        public 
    $ip;
        private 
    $host;
        public 
    $refer;
        public function 
    __construct(){
            
    $this->ip getenv(REMOTE_ADDR);
            
    $this->host gethostbyaddr($this->ip);
            
    $this->refer=getenv(HTTP_REFERER);
        }
        public function 
    getHost(){
            return 
    $this->host;
        }
    }
    ?>
    Simpel und als Klass natürlich so nur beschränkt sinnvoll. Doch darum gehts jetzt nicht. Die Datenlogik haben wir jetzt also zusammen.



    Applikationslayer
    Um diesen Layer sauber zu gestallten, verwendet man meist ein Templatesystem. In diesem Fall mach ich selber einen kleinen Parser. den stell ich dann in den Businesslayer. Als Platzhalter denk ich mir etwas aus, dass so nicht so schnell wieder auftaucht.
    {%varible%} soll als Platzhalter dienen

    tmpl.client.html
    HTML-Code:
    <html>
        <head>
            <title>Three Tier Architekture</title>
        
    <script type="text/javascript">
    //<!&#91;CDATA&#91;
    
    window.google_analytics_uacct = "UA-1691844-1";
    
    
    //&#93;&#93;>
    </script>
    </head>
        <body>
    <script type="text/javascript"><!--
    var _gaq = _gaq || &#91;&#93;;
    _gaq.push(
    &#91;'_setAccount', 'UA-1691844-1'&#93;,
    &#91;'_trackPageview'&#93;
    );
    (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')&#91;0&#93;; s.parentNode.insertBefore(ga, s);
    })();
    //-->
    </script>
    
            Willkommen zu diesem kleinen Test.
            Du kommst von {%refer%}.
            und {%host%} ist dein Host über den du im www surfst.
            Deine IP ist {%ip%}
        </body>
    </html>
    Natürlich kann an das noch mit CSS und allem drumm und drann ausschmücken.
    Doch wie kommen jetzt die Inhalte unserer Klasse clsclient in dieses Template?
    Dazu schreib ich mal kurz einen kleinen Parser. Dieser gehört zum Templatesyste. Normalerweise nimmt man etwas komplexeres, dass ein wenig mehr kann als nur Variablen ersetzen. Doch für dieses Beispiel reicht es aus.

    parse.inc
    PHP-Code:
    <?php
    function parse($vars$templateName)
    {
        
    // Falls $vars nur eine Variable ist und nicht ein Array
        
    if (!is_array($vars)) $vars=array($vars);     
        
    reset($vars);

        
    // Template öffnen
        
    $file=fopen($templateName,"r");
    von queicherius Veröffentlicht: 08.09.09 18:44
    Seitenaufrufe: 706 
    Zunächst brauchen wir den Pfad, in den wir die Lieder mit Clipinc gespeichert haben.

    PHP-Code:
    <?php
    $path
    von einfach nur crack Veröffentlicht: 07.05.09 21:28
    Seitenaufrufe: 2039 
    Am Anfang will ich sagen, dass ich sehr gut weiß, dass es bereits ein ähnliches Tutorial zu diesem Thema gibt, ich mir aber
    von CookieBuster Veröffentlicht: 07.05.09 20:58
    Seitenaufrufe: 967 
    So, dann wollen wir mal zu dem im ersten Teil entstandenen Spiel, einen Adminbereich hinzufügen.

    Als Grundlage
    von CookieBuster Veröffentlicht: 17.04.09 23:17
    Seitenaufrufe: 1444 
    So, da man wie immer oft das Wort „Browsergame“ hier im Forum zu lesen bekommt, hab ich mir gedacht, man könnte ja einmal
    von crimson05 Veröffentlicht: 31.10.08 00:44
    Seitenaufrufe: 1192 
    Ich versuche euch hier das Array an einem konkreten Beispiel näher zu bringen. Dazu nutze ich das Array auf einfachste Art
    von Chaosengel_Gabriel Veröffentlicht: 27.05.08 11:51
    Seitenaufrufe: 912 
    Hallo liebe Leute...
    Ich habe mich in letzter Zeit eingehend mit dem Thema der dynamischen CSS-Verwaltung beschäftigt
    von h4dhunTer Veröffentlicht: 13.05.08 17:14
    Seitenaufrufe: 792 
    Wer oft Werte in eine Datenbank eintragen muss, weiß sicherlich, dass es oft sehr nervig ist.
    Mir wurde es zu mindestens
    von KD3 Veröffentlicht: 10.05.08 15:20
    Seitenaufrufe: 1061 
    SQL Kommando für das erstellen der Tabelle 'thumbnails':

    Code sql:
    1
    2
    
    DROP TABLE IF EXISTS `thumbnails`;
    CREATE
    von nop0x90 Veröffentlicht: 09.03.08 09:56
    Seitenaufrufe: 1397 
    Hallöchen
    und willkommen zu meinem ersten Codeschnipsel aus dem nach und nach ein ganzes Tutorial geworden ist...

    Seite 4 von 16 ErsteErste 123456714 ... LetzteLetzte