php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack (3) Themen-Optionen Thema bewerten
Alt 31.10.2008, 10:04  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo KarlEgon,

nun ein paar Sätze zum Beispiel:
1. Das Haupt-Template beinhaltet diverse dynamische includes. Diese werden über das GlobalModel gesteuert und können zu Demonstration über die index.php geändert werden. Die Anzahl der includes ist unbegrenzt, das Model muss lediglich die entsprechenden Parameter vorhalten und es muss einen Mechanismus geben. Idealerweise implementierst du dazu eine FrontController-Action.
2. Das obere Template bindet gleich noch ein weiteres Modul ein, das wiederum über das Model des Moduls einen weiteren Subview einbaut. Dies soll verdeutlichen, dass du quasi beliebig tief und komplex verschachteln kannst. Die jeweilige Zuständigkeit sollte jedoch beim entsprechenden Modul und nicht auf der oberen Ebene liegen, da das onst zu komplex wird.

Zitat:
Mhhh habe ich mir angeschaut, aber bei dem Beispiel müsste ich doch, um ein weiteres sub_view zum south template hinzuzufügen, ein weiteren import design machen oder?
Genau. Wenn du im south Template einen weiteren sub_view möchtest, füge einfach einen weiteren importdesign-Tag hinzu. Dabei solltest du dir jedoch Gedanken darüber machen, wer die Parameter des dynamischen Includes verwaltet. Im Fall des south Templates könnte das das ModAModel sein - wie auch schon so angewandt.

Wichtig ist an dieser Stelle einfach, dass du dir vorher über die Struktur und die Möglichkeiten der Steuerung Gedanken machst und das dann implementierst. Das erleichtert einiges.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 31.10.2008, 10:56  
Erfahrener Benutzer
 
Registriert seit: 24.10.2008
Beiträge: 291
PHP-Kenntnisse:
Fortgeschritten
KarlEgon befindet sich auf einem aufstrebenden Ast
Standard

Aber so erzeuge ich doch total unnötigen Code, wenn ich die Möglichkeit einbaue 10 Sub Templates einzubinden, sie auch einmal nutze, aber meistens nur 1-3 Sub Templates brauche, dann ist das doch unsinnig oder nicht?

Daran denke ich halt. Muss mir noch ein paar Gedanken darüber machen im Zusammenhang mit meinem Projekt.
KarlEgon ist offline   Mit Zitat antworten
Alt 31.10.2008, 11:16  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo KarlEgon,

Zitat:
Aber so erzeuge ich doch total unnötigen Code, wenn ich die Möglichkeit einbaue 10 Sub Templates einzubinden, sie auch einmal nutze, aber meistens nur 1-3 Sub Templates brauche, dann ist das doch unsinnig oder nicht?
Wie gesagt: it depends on the situation. Wenn du nur 1-3 Templates einbauen möchtest, dann solltest du das auch tun. Mit der von mir geschilderten Vorgehensweise hast du jedoch die Möglichkeit das ohne viel Aufwand auf 10 auszubauen.
Brauchst du die Möglichkeit nicht, in den Subtemplates noch weitere dynamische Subtemplates einbinden zu können, so wird das Konstrukt auch einfacher.

Zitat:
Muss mir noch ein paar Gedanken darüber machen im Zusammenhang mit meinem Projekt.
Noch ein Tipp dazu: ich würde hier zunächst ein Screen-Design anfertigen und die relevanten Areas markieren. Anschließend überlegst du dir die Funktion der einzelnen Areas. Bist du damit fertig, erkennst du sicher Gemeinsamkeiten und Unterschiede und bist dann in der Lage das entsprechend in eine technische Lösung zu gießen.

Insgesamt ist das weniger eine Diskussion über das Mittel der Umsetzung (Framework, Template-Engine, ...) denn über das Design der Software.

Solltest du noch weitere Fragen haben oder brauchst du noch Hinweise zu verwandten Themen, dann meld dich einfach!
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 02.11.2008, 23:23  
Erfahrener Benutzer
 
Registriert seit: 24.10.2008
Beiträge: 291
PHP-Kenntnisse:
Fortgeschritten
KarlEgon befindet sich auf einem aufstrebenden Ast
Standard

Joar ich denke ich werde es so machen wie du mir gezeigt hast! Allerdings habe ich noch eine Frage:
Wie kann ich nachträglich noch so eine rote Umrandung erreichen?
Code:
<@controller namespace="modules::game::register::pres::documentcontroller" file="register_controller" class="RegisterController" @>
<core:addtaglib namespace="tools::form::taglib" prefix="html" class="form" />
Die Registrierungsdaten werden auch f&uuml;r das Portal verwendet
<html:form name="RegisterForm" method="post" action="">
	<form:text name="username" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:password name="userpass" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:password name="userpass2" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:text name="useremail" class="eingabe_feld" validate="true" validator="EMail" button="register" />
	<form:text name="useremail2" class="eingabe_feld" validate="true" validator="EMail" button="register" />
	<form:select name="rasse" />
	<form:button name="register" value="Registrieren" class="eingabe_feld" />
</html:form>
Und der Controller:
PHP-Code:
<?php
    
class RegisterController extends baseController {
        private 
$races = array("1","2","3","4");
        public function 
__construct() {

        }

        public function 
transformContent() {
            
$transform true;
            
$Form__Register $this->__getForm("RegisterForm");
            if(
$Form__Register->get("isSent") && $Form__Register->get("isValid")) {
                
$transform false;
                
$userpass $Form__Register->getFormElementByName("userpass");
                
$userpass2 $Form__Register->getFormElementByName("userpass2");
                if(
$userpass->getAttribute('value')!=$userpass2->getAttribute('value')) {
                    
$userpass->setAttribute('value',"");
                    
$userpass->setAttribute()
                    
$userpass->set('isValid',false);
                    
$userpass2->setAttribute('value',"");
                    
$userpass2->set('isValid',false);
                    
$Form__Register->set('isValid',false);
                    
$transform true;
                }
                
$useremail $Form__Register->getFormElementByName("useremail");
                
$useremail2 $Form__Register->getFormElementByName("useremail2");
                if(
$useremail->getAttribute('value')!=$useremail2->getAttribute('value')) {
                    
$useremail->setAttribute('value',"");
                    
$useremail->set('isValid',false);
                    
$useremail2->setAttribute('value',"");
                    
$useremail2->set('isValid',false);
                    
$Form__Register->set('isValid',false);
                    
$transform true;
                }
            }
            if(
$transform) {
                
$Select__Race $Form__Register->getFormElementByName("rasse");
                for(
$i=0;$i<count($this->races);$i++) {
                    
$Select__Race->addOption($this->races[$i],$i+1);
                }
                
$Form__Register->transformOnPlace();
            }
        }
    }
?>
Nun will ich, wenn Die beiden Passwörter nicht gleich sind, dass das Formular dann diese roten Umrandung um die beiden Passwort Felder kommt, leer werden sie ja schonmal gemacht. Habe dazu nichts in der Doku gefunden (ist auch manchmal schwer sich da durch zuarbeiten)

Geändert von KarlEgon (03.11.2008 um 08:48 Uhr).
KarlEgon ist offline   Mit Zitat antworten
Alt 03.11.2008, 09:29  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo KarlEgon,

du hattest doch heute Morgen noch 2 Fragen?

Zitat:
Nun will ich, wenn Die beiden Passwörter nicht gleich sind, dass das Formular dann diese roten Umrandung um die beiden Passwort Felder kommt, leer werden sie ja schonmal gemacht. Habe dazu nichts in der Doku gefunden (ist auch manchmal schwer sich da durch zuarbeiten)
Das Problem an dieser Stelle ist, dass ein Formular-Feld keinen Statis "isValid" kennt, sondern nur das Formular selbst. Möchtest du also einen roten Rahmen um das Feld ziehen, gibt es zwei Möglichkeiten:

(1) Am Anfang des Controllers das Formular nur auf "isSent" abfragen und innerhalb der Kontrollstruktur dann auf Gleichheit prüfen.
(2) Validierung der beiden Felder im Template abschalten und dann wie bereits passiert auf Gleichheit prüfen.

Wenn du sowohl bei Leer-Eingabe als auch bei nicht übereinstimmenden Passwörtern einen roten Rahmen haben möchtest, solltest du (1) wählen. Der Code dazu würde dann wir folgt aussehen:

PHP-Code:
...
if(
$Form__Register->get('isSent')){
   ...
   
$userpass $Form__Register->getFormElementByName("userpass");
   
$userpass2 $Form__Register->getFormElementByName("userpass2");
   
   if(
$userpass->getAttribute('value') != $userpass2->getAttribute('value')) {
      
$userpass->setAttribute('style',$userpass->getAttribute('style').'; border: 2px solid red;');
      
$userpass2->setAttribute('style',$userpass2->getAttribute('style').'; border: 2px solid red;');
      
$Form__Register->set('isValid',false);
      ...
   }
   
   ...
   
   if(!
$Form__Register->get('isValid')){
      
$Form__Register->transformOnPlace();
   }
   
   ...
   
}
... 
Soweit nun klar? Falls nicht, poste mir nochmal deinen Quelltext und ich bau die Änderung ein, dann siehst du, wie das im Kontext zu lösen ist.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 03.11.2008, 09:44  
Erfahrener Benutzer
 
Registriert seit: 24.10.2008
Beiträge: 291
PHP-Kenntnisse:
Fortgeschritten
KarlEgon befindet sich auf einem aufstrebenden Ast
Standard

Ich habe es nun folgendermaßen, funktioniert prima:
HTML-Code
Code:
<@controller namespace="modules::game::register::pres::documentcontroller" file="register_controller" class="RegisterController" @>
<core:addtaglib namespace="tools::form::taglib" prefix="html" class="form" />
Die Registrierungsdaten werden auch f&uuml;r das Portal verwendet
<html:form name="RegisterForm" method="post" action="">
	<form:text name="username" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:password name="userpass" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:password name="userpass2" class="eingabe_feld" validate="true" validator="Text" button="register" />
	<form:text name="useremail" class="eingabe_feld" validate="true" validator="EMail" button="register" />
	<form:text name="useremail2" class="eingabe_feld" validate="true" validator="EMail" button="register" />
	<form:select name="rasse" />
	<form:button name="register" value="Registrieren" class="eingabe_feld" />
</html:form>
PHP-Code
PHP-Code:
public function transformContent() {
            
$transform true;
            
$Form__Register $this->__getForm("RegisterForm");
            if(
$Form__Register->get("isSent") && $Form__Register->get('isValid')) {
                
$transform false;
                
$userpass $Form__Register->getFormElementByName("userpass");
                
$userpass2 $Form__Register->getFormElementByName("userpass2");
                if(
$userpass->getAttribute('value')!=$userpass2->getAttribute('value')) {
                    
$userpass->setAttribute('style',$userpass->getAttribute('style').'; border: 2px solid red;');
                    
$userpass2->setAttribute('style',$userpass2->getAttribute('style').'; border: 2px solid red;');
                    
$Form__Register->set('isValid',false);
                    
$transform true;
                }
                
$useremail $Form__Register->getFormElementByName("useremail");
                
$useremail2 $Form__Register->getFormElementByName("useremail2");
                if(
$useremail->getAttribute('value')!=$useremail2->getAttribute('value')) {
                    
$useremail->setAttribute('value',"");
                    
$useremail->setAttribute('style',$useremail->getAttribute('style').'; border: 2px solid red;');
                    
$useremail2->setAttribute('value',"");
                    
$useremail2->setAttribute('style',$useremail2->getAttribute('style').'; border: 2px solid red;');
                    
$Form__Register->set('isValid',false);
                    
$transform true;
                }
                if(
$transform) {
                    
$userpass->setAttribute('value',"");
                    
$userpass2->setAttribute('value',"");
                }
            }
            if(
$transform) {
                
$Select__Race $Form__Register->getFormElementByName("rasse");
                for(
$i=0;$i<count($this->races);$i++) {
                    
$Select__Race->addOption($this->races[$i],$i+1);
                }
                
$Form__Register->transformOnPlace();
            }
        } 
Wegen der zweiten Frage von heute morgen, die hat sich erledigt, habe alles gefunden was ich brauche um ein Captcha einzubauen, allerdings finde ich das in der Doku sehr ungenau, dort steht, es reicht einfach diesen Tag einzufügen usw.
KarlEgon ist offline   Mit Zitat antworten
Alt 03.11.2008, 09:58  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo KarlEgon,

schön, dass es nun funktioniert!

Zitat:
Wegen der zweiten Frage von heute morgen, die hat sich erledigt, habe alles gefunden was ich brauche um ein Captcha einzubauen, allerdings finde ich das in der Doku sehr ungenau, dort steht, es reicht einfach diesen Tag einzufügen usw.
Schau mal unter Mitgelieferte Module :: Adventure PHP Framework (APF), dort findest du eine ausführliche Anleitung.

Solltest du noch Fragen haben, dann immer her damit!
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 03.11.2008, 10:50  
Erfahrener Benutzer
 
Registriert seit: 24.10.2008
Beiträge: 291
PHP-Kenntnisse:
Fortgeschritten
KarlEgon befindet sich auf einem aufstrebenden Ast
Standard

Irgendwie muss ich etwas übersehen, also folgendes:
./index.php
PHP-Code:
<?php
    
include_once('./core/pagecontroller/pagecontroller.php');
    
import('core::frontcontroller','Frontcontroller');
    
$fC = &Singleton::getInstance('Frontcontroller');
    
$fC->start('sites::main::pres::templates','main');
?>
./sites/main/pres/templates/main.html
Code:
<core:importdesign
	namespace="sites::main::pres::templates"
	template="empty"
/>
./sites/main/pres/templates/empty.html
Steht einfach nichts drin

Fehlermeldung
Code:
[Document::__loadContentFromFile()] Design "" not existent in namespace ""!
Ich weiß nicht warum er mir diesen Fehler ausgibt, irgendwie scheint er <core:importdesign> nicht gescheit auslesen zu können. Übersehe ich irgendwas? -.- Stehe irgendwie aufm Schlauch

Edit:
Nehme ich <core:importdesign> raus aus der main.html, dann wird mir eine weiße seite ohne Fehlermeldung angezeigt

Edit2:
Kann es sein, dass das normale <core:importdesign> sich nicht mit dem Frontcontroller verträgt? *probier* mh, ne wenn ich es über PageController, loadDesign und transform mache kommt der gleiche Fehler -.-

Edit3:
Kann es einfach nur sein, dass ich keine Tabs innerhalb des <core:importdesign> Tags machen darf?

Edit4:
Bin mir nun ziemlich sicher, das keine tabs vorkommen dürfen, allerdings sind Fehlermeldungen wie
Code:
Error-ID: 4b584f0a1c4397a47554371f8cf489c4 
Message: [Document::__loadContentFromFile()] Design "" not existent in namespace ""! 
Number: 256 
File: C:\xampp\xampp\htdocs\APF\core\pagecontroller\pagecontroller.php 
Line: 1339
nicht sehr aussagekräftig, da man keine Ahnung hat woher nun der Fehler kommt, man weiß nur das es im Pagecontroller aufgetreten ist, aber ich könnte jetzt nicht sagen, welches Template diesen Fehler verursacht.

Geändert von KarlEgon (03.11.2008 um 16:06 Uhr).
KarlEgon ist offline   Mit Zitat antworten
Alt 03.11.2008, 17:29  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo,

ich habe leider gerade keine Entwicklungsumgebung da, den Fehler verstehe ich jedoch trotzdem nicht. An sich ist die Fehlermeldung klar, sofern weder "namespace" noch "template" bekannt sind, kann auch kein Template geladen werden. Was sicher nicht der Fall ist, dass sich importdesign und der FrontController nicht vertragen, da letzterer einfach den PageController zur Generierung der Seiten nutzt.

Was das Thema Tab angeht, so sollte das theoretisch kein Problem sein, da ich die relevanten Token per strpos() suche und Tags dann nicht relevant sind.

Ich prüfe das jedoch heute abend nochmal mit den daten deines Posts und melde mich.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dr.e. ist offline   Mit Zitat antworten
Alt 03.11.2008, 18:39  
Moderator und Wett-König
 
Benutzerbild von dr.e.
 
Registriert seit: 21.05.2008
Beiträge: 3.633
PHP-Kenntnisse:
Fortgeschritten
dr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblickdr.e. ist ein Lichtblick
dr.e. eine Nachricht über Skype™ schicken
Standard

Hallo KarlEgon,

gratuliere, deine letzte Vermutung entspricht auch der Tatsache.
Der Tag-String-Parser (xmlParser::getTagAttributes()) erwartet ein Leerzeichen als Trennzeichen zwischen dem Tag-Token und dem ersten Attribut-Namen. Damit wird aus dem Aufruf des Parsers ein leeres Parameter-Array zurückgegeben, worüber sich der importdesign-Tag natürlich zu Recht aufregt.

Da es mir jedoch durchaus sinnvoll erscheint, auf ein Tab zu verwenden habe ich diese Erweiterung im Parser für dich im SVN vorgenommen. Wichtig ist dabei natürlich, dass ein reiner Zeilenumbruch nicht zu der Klasse der gültigen Trennzeichen gehört. Bitte teste deine Template mit der Datei pagecontroller.php5 (bitte in .php umbenennen) aus SourceForge.net Repository - [adventurephpfra] Index of /trunk/core/pagecontroller. Der diff kann online unter SourceForge.net Repository - [adventurephpfra] Diff of /trunk/core/pagecontroller/pagecontroller.php5 eingesehen werden.

Ich hoffe, damit kannst du nun arbeiten.

//EDIT:
Zitat:
nicht sehr aussagekräftig, da man keine Ahnung hat woher nun der Fehler kommt, man weiß nur das es im Pagecontroller aufgetreten ist, aber ich könnte jetzt nicht sagen, welches Template diesen Fehler verursacht.
Zugegeben, man sieht das nicht auf den ersten Blick, der Stacktrace verrät dir jedoch in welcher Methode es knallt und damit implizit, in welchem Template. Das ist natürlich schwierig zu verargumentieren, deshalb versuche ich im Tag noch eine aussagekräftigere Fehlermeldung ausgeben zu können. "Versuchen" deshalb, da das allgemeingültig und für alle DOM-Strukturen funktionieren muss und das etwas Zeit zum Testen braucht.

//EDIT2:
Als ungetestete Lösung zu EDIT kann ich dir folgendes anbieten: ersetzte die Methode Document::__loadContentFromFile() mit folgenden Code:

PHP-Code:
      function __loadContentFromFile($Namespace,$Design){

         
$File APPS__PATH.'/'.str_replace('::','/',$Namespace).'/'.$Design.'.html';

         if(!
file_exists($File)){
            
$code htmlentities($this->__ParentObject->get('Content'));
            
trigger_error('[Document::__loadContentFromFile()] Design "'.$Design.'" not existent in namespace "'.$Namespace.'"! Please check your template code ('.$code.').',E_USER_ERROR);
            exit();
          
// end if
         
}
         else{
            
$this->__Content file_get_contents($File);
          
// end else
         
}

       
// end function
      

Damit solltest du wenigstens den relevanten Template-Code bekommen und einfacher Debuggen können. Ist der Patch ausführlicher getestet, werde ich ihn mit in das SVN aufnehmen.
__________________
Viele Grüße,
Dr.E.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1. Think about software design before you start to write code!
2. Discuss and review it together with experts!
3. Choose good tools (-> Adventure PHP Framework (APF))!
4. Write clean and reusable software only!
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Geändert von dr.e. (03.11.2008 um 18:55 Uhr).
dr.e. ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

LinkBacks (?)
LinkBack to this Thread: http://www.php.de/php-fortgeschrittene/48424-erledigt-variablen-einem-template-ersetzen.html
Erstellt von For Type Datum
Adventure PHP Framework - Downloads This thread Refback 05.12.2008 21:54
Adventure PHP Framework - Literatur This thread Refback 21.11.2008 12:58
forum.adventure-php-framework.org [de] • Thema anzeigen - Einführung <core:appendnode />-Tag This thread Refback 20.11.2008 19:41

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] ob_start verwirft gesetzte Variablen?! tohms PHP Tipps 2008 3 19.10.2008 16:50
Lieber Template oder Normal für ein community? mysteryxxx PHP Tipps 2008 8 17.09.2008 23:04
Klasse statt globaler Variablen ecomeback PHP-Fortgeschrittene 6 15.07.2008 16:30
Übergeben von Variablen an in PHP eingebundenes Perl-Script shredder01 PHP Tipps 2008 3 04.04.2008 09:25
Teil einer Variablen mit einer Variablen ersetzen ? simsalabim PHP Tipps 2007 11 20.03.2007 20:36
variablen aus db ersetzen snatch-ic PHP Tipps 2006 7 21.05.2006 01:51
template in template einfuegen tonne PHP Tipps 2005-2 8 10.11.2005 22:24
In Fuktionen alle Variablen Global stellen ? atom-dragon PHP Tipps 2005-2 5 22.07.2005 04:30
Template System oder Lösung gesucht PHP Tipps 2005 14 21.05.2005 22:07
Variablen übergeben bzw. auslesen? PHP Tipps 2005 4 30.01.2005 03:56
suche ein bestimmtes template system PHP Tipps 2004-2 2 07.11.2004 19:49
Template Parser PHP-Fortgeschrittene 9 06.10.2004 23:04
mit print Variablen in String ersetzen PHP Tipps 2004 3 27.09.2004 21:29
Variablen per adresse übergeben rocco PHP Tipps 2004 7 24.07.2004 12:03
[Erledigt] Template Scripting PHP-Fortgeschrittene 2 04.06.2004 18:34

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
document::__loadcontentfromfile() preg_replace, php gettagattributes preg_match_all, preg_match nur \named subpatterns\ ausgeben

Alle Zeitangaben in WEZ +1. Es ist jetzt 19:20 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum