SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Das Zend Framework

Das Zend Framework zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > PHP für Fortgeschrittene und Experten
Hilfe Community Kalender Heutige Beiträge Suchen

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 17.04.2004, 12:02:42
Barney Barney ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 9
Datei durchsuchen und ergebnis in ein arry schreiben

Hallo Leute,

ich habe folgendes Problem :


Ich lese auch einer mysqldatenbank den quelltext für meine Webseite aus. Um die Seite noch variabler zu gestalten versuche ich jetzt mit Templates zu arbeiten.
Ich möchte gerne ein Grundtamplate haben, aus dem sich dann die Webseite zusammensetzt.
Um ein weiteres Template in das haupttemplate zu laden, wollte ich das Dokument nach einer bestimmten Zeichenkette durchsuchen und daraus dann ermitteln, welches Template einzusetzten ist.

z.B. :

<html>
<body>[TMP]Tempalte1[/TMP]<br>[TMP]Tempalte2] usw ...



Das richtige Template kann ich auch per ereg_replace und einer mysqlabfrage einfügen. Dabei wird jedoch immer nur das letzte Tempalte ersetzt.
Als Lösung habe ich mir eine schleife vorgestellt, die die Tempaltes nacheinander ersetzt.
Jetzt zu meinem Probelm :
Wie kann ich ein arry erstellen, indem die einzelnen Tempaltenamen stehen (z.b. $arry = "Template1,Tempalte2,..."; ) ???

Das Script muss also den Eintrag durchsuchen, und alles bis auch die [TMP]...[/TMP] entfernen, und dann den Inhalt der [TMP]...[/TMP] in ein arry schreiben.

Ich hoffe Ihr hab mein Problem verstanden.
Danke für eure Hilfe

Barney
Mit Zitat antworten
  #2  
Alt 17.04.2004, 12:29:31
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
wieso schreibst du nicht eine template variable in dein haupttemplate, wo der inhalt hinkommen soll, und ersetzt diese wahlweise mit dem untertemplate...so mach ichs zumindest...

welche template-engine benutzt du denn?
Mit Zitat antworten
  #3  
Alt 17.04.2004, 13:09:55
Barney Barney ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 9
Meine eigene ...

Also z.B. einfach $menu ins das haupttemplate und nur das ersezten?

----

gibt es denn kein befehl wo der Inhalt, der zwischen zwei Zeichen steht ausgelesen wird ?

z.B. alla explode("[TMP]","[/TMP]",$variable); (mit explode geht das nicht,I know)???
Mit Zitat antworten
  #4  
Alt 17.04.2004, 13:34:08
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
also, warum denn kompliziert wenns auch einfach geht?

zweitens: ja gibt es, mit regulären ausdrücken und den preg-funktionen. viel spaß dabei, ist wesentlich schwieriger, aber wenn du viel zeit und geduld hast, bitte...
Mit Zitat antworten
  #5  
Alt 17.04.2004, 14:02:10
Barney Barney ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 9
Wie meinst du dass mit dem einfachen ?

in etwa so :

$anfrage = mysql_query("SELECT * FROM data WHERE id LIKE '$id' ");
while($variable = mysql_fetch_assoc($anfrage))
{
$var1 = $variable["value2"];
}

$anfrage = mysql_query("SELECT * FROM data2 WHERE id LIKE '$id2' ");
while($variable = mysql_fetch_assoc($anfrage))
{
$var2 = $variable["value2"];
}

$build=ereg_replace("$inhalt","",$var2);

echo $build;


(wenn man davon ausgeht, dass irgandwo in $var1, $inhalt auftaucht)


order anders ???
Mit Zitat antworten
  #6  
Alt 17.04.2004, 15:13:29
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
1. für php-code benutzt bitte die php-tags aus dem forum.

2. ich meinte _einfach_ so:

$einzufuegendertext = $instannzdertemplateklasse->fetch( "./menu.tpl.html" );

$instannzdertemplateklasse->assign( 'menu' , $einzufuegendertext );

$instannzdertemplateklasse->display( "./maintemplate.tpl.html" );

so ist bei der template-engine, die ich benutze.

wenn du deine eigene hast musst du selbst wissen, wie das geht.

3. lese bitte genau: ich habe von preg-funktionen gesprochen, nicht von ereg.

4. wieso benutzt du eine template-enginge, schreibst aber

$build=ereg_replace("$inhalt","",$var2);

echo $build;

? "echo" soll doch mit template umgangen werden, oder nicht?

5. wieso hast du deine templates in einer db gespeichert und nicht als html-dateien in einem ordner?
Mit Zitat antworten
  #7  
Alt 17.04.2004, 15:17:14
Barney Barney ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 9
bin halt anders

außerdem kann man so einacher ein föllig neues TP erstellen

oder wenn man später halt mehrere verwenden möchte
Mit Zitat antworten
  #8  
Alt 17.04.2004, 15:20:50
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
so, ich nehme an, das war eine antwort auf die letzte frage...

ich verstehe es abe nicht so ganz: ich muss die html-dateien in einem editor öffnen, bearbeiten, speichern, und wieder in den template-ordner laden.

du musst sie dir vorher aus der datenbank holen und dann wieder in die datenbank schmeißen,was m.e. umständlicher ist; was machst du denn, wenn du die template-engine mal auf einem system ohne datenbank verwenden möchtest?
Mit Zitat antworten
  #9  
Alt 17.04.2004, 15:27:04
Barney Barney ist offline
Anfänger
 
Registriert seit: Apr 2004
Beiträge: 9
Gibt es halt nicht :)

Auf meinen Servern läuft überall MySQL...
Ich erachte es eigentlich für umständlicher eine Datei zu bearbeiten und dann hochzuladen. Somit kann ich das alles online machen und direkt abspeichern. Find ich irgendwie einfacher.

Und eigentlich ist es doch egal, oder ?

Geändert von Barney (17.04.2004 um 15:51:14 Uhr)
Mit Zitat antworten
  #10  
Alt 17.04.2004, 16:12:06
feuervogel feuervogel ist offline
SELFPHP Guru
 
Registriert seit: Jan 2004
Ort: Leipzig
Beiträge: 4.549
okay, wenn du meinst. ich kannte bisher nur keine template-engine die ihre templates in einer db-speichert. aber gut, wenn du halt deinen eigenen weg gehen willst, musst du eventuell mit deinen problemen selbst fertig werden...

als tipp:



smarty
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 17:33:42 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt