zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden Merhsprachige Website

Antwort
 
LinkBack Themen-Optionen Ansicht
  #11 (permalink)  
Alt 29.08.2013, 17:02
Benutzerbild von lottikarotti
Ein ♥ für's Web
XHTMLforum-Mitglied
 
Registriert seit: 18.04.2012
Ort: Karlsruhe
Beiträge: 396
lottikarotti wird schon bald berühmt werden
Standard

Hallöchen,

Zitat:
Zitat von mymaksimus Beitrag anzeigen
Hm unter welchem Stichwort suche ich denn da?
Also wie bringe ich meinem Dokument bei zB aus $ $ <?php ?> zu machen?
sowas kannst du einem "Dokument" nicht einfach "beibringen". Du liest den Inhalt der Datei "index.html" aus, ersetzt dort alle Platzhalter mit den entsprechenden Werten aus deinem Array und gibst das Ergebnis anschließend aus. Hier mal ein grobes Beispiel wie das aussehen könnte:

PHP-Code:
<?php

    
/** Daten festlegen */
    
$data = [
        
'welcome' => 'Herzlich willkommen,',
        
'goodbye' => 'und auf Wiedersehen!'
    
] ;

    
/** Demo: HTML generieren */
    /** Im Normalfall wird hier eine html-Datei eingelesen */
    
$html "<h1>#welcome#</h1>\n<h2>#goodbye#</h2>" ;

    
/** Platzhalter ersetzen */
    
$html preg_replace_callback'/#([a-z]*)#/', function( $match ) use( $data ) {
        
// $match[0] = #welcome#
        // $match[1] = welcome
        
return $data[$match[1]];
    }, 
$html ) ;

    
/** Verarbeiteten HTML-Code ausgeben */
    
echo $html ;

?>
Der hier verwendete HTML-Code ist natürlich nur beispielhaft direkt als Zeichenkette zugewiesen worden. Im Normfalfall holst du dir den Inhalt deines Templates aus einer Datei:
PHP-Code:
$html file_get_contents('index.html'); 
PS: Ich empfehle dir bei einer Syntax ähnlich #expr# zu bleiben, da man dem href-Attribut somit vorgaukelt, dass es sich dabei um einen Anker handelt:
HTML-Code:
<a href="#url#">Hyperlink</a>
Rufst du diese Datei nun direkt im Browser auf (also ohne dass PHP die Platzhalter verarbeitet), kannst du ohne weiteres auf den Link klicken - es wird nämlich nichts passieren. Hat href allerdings den Wert "$url$", landest du auf einer Fehlerseite.

Viele Grüße,
lotti
__________________
Empfehlenswerte Links:
jsFiddle | JavaScript Patterns | RedBeanPHP | Mozilla Developer Network -/- W3C Validator | JSLint

Geändert von lottikarotti (29.08.2013 um 17:09 Uhr)
Mit Zitat antworten
Sponsored Links
  #12 (permalink)  
Alt 29.08.2013, 17:51
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 17.08.2013
Beiträge: 242
mymaksimus befindet sich auf einem aufstrebenden Ast
Standard

Okay vielen dank, das werde ich mal versuchen
Aber ich muss dann diese php datei aufrufen statt der index.html oder? Und wenn jemand trozdem index.html eigibt der hat halt pech gehabt weil immer #texttext# ausgegeben wird, oder?

Geändert von mymaksimus (29.08.2013 um 17:55 Uhr)
Mit Zitat antworten
Sponsored Links
  #13 (permalink)  
Alt 29.08.2013, 17:57
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 13.07.2006
Beiträge: 745
mermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblickmermshaus ist ein wunderbarer Anblick
Standard

Es gibt übrigens fertige Template-Engines (Twig, Smarty, PHPTAL, …).
Mit Zitat antworten
  #14 (permalink)  
Alt 29.08.2013, 18:15
Benutzerbild von lottikarotti
Ein ♥ für's Web
XHTMLforum-Mitglied
 
Registriert seit: 18.04.2012
Ort: Karlsruhe
Beiträge: 396
lottikarotti wird schon bald berühmt werden
Standard

Hallöchen,

Zitat:
Zitat von mymaksimus Beitrag anzeigen
Okay vielen dank, das werde ich mal versuchen
Aber ich muss dann diese php datei aufrufen statt der index.html oder? Und wenn jemand trozdem index.html eigibt der hat halt pech gehabt weil immer #texttext# ausgegeben wird, oder?
In einer ordentlichen Umgebung ist die Template-Datei von außen gar nicht erreichbar. Wenn sie aber im Root-Verzeichnis herumliegt, kann man sie auch direkt aufrufen - bringt aber niemandem etwas.

Wie mermshaus aber bereits angedeutet hat, solltest du es vllt. erstmal mit fertigen Template-Engines probieren um das Konzept dahinter zu verinnerlichen. Offensichtlich mangelt es hier noch an den Basics. Der Grund wieso ich eine eigene Tempalte-Engine entwickelt habe, liegt in einer spezielle Anforderung -- die Templates sollten "präsentierbar" sein, auch wenn sie noch nicht von PHP verarbeitet wurden. Da das nicht jeder benötigt, braucht auch nicht jeder gleich eine eigene Template-Engine zu entwickeln.

Viele Grüße,
lotti
__________________
Empfehlenswerte Links:
jsFiddle | JavaScript Patterns | RedBeanPHP | Mozilla Developer Network -/- W3C Validator | JSLint
Mit Zitat antworten
  #15 (permalink)  
Alt 29.08.2013, 19:07
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 17.08.2013
Beiträge: 242
mymaksimus befindet sich auf einem aufstrebenden Ast
Standard

Nein also Grundlagen sitzen schon, aber ich bin einer der immer ein bisschen braucht, neue Zusammenhänge zu verstehen, weil ich mir am anfang immer alles zu kompliziert vorstelle ^^ Und sry aber ich werde keine Templates oder Frameworks benutzen. Das habe ich noch nie getan und werde es auch ausser bei der 3d entiwcklung nicht machen ^^

Aber nochmal um es zu verdeutlichen:

SERVER
______ root
__________index.php (verarbeitet datei1.html und gibt es aus)
__________sonstige dateien, css bilder usw
______ irgendein Ordner den man nicht einfach aufrufen kann
__________datei1.html
__________datei2.html

So ungefähr? und diesen Ordner schütze ich dann mit htcacces, oder? Auch wenn mir das hier nicht wirklich was bringen würde.
Und was ist eine "ordentliche" Umgebung?

Geändert von mymaksimus (29.08.2013 um 19:13 Uhr)
Mit Zitat antworten
  #16 (permalink)  
Alt 29.08.2013, 20:08
Benutzerbild von lottikarotti
Ein ♥ für's Web
XHTMLforum-Mitglied
 
Registriert seit: 18.04.2012
Ort: Karlsruhe
Beiträge: 396
lottikarotti wird schon bald berühmt werden
Standard

Hallöchen,

Zitat:
Zitat von mymaksimus Beitrag anzeigen
Nein also Grundlagen sitzen schon, aber ich bin einer der immer ein bisschen braucht, neue Zusammenhänge zu verstehen, weil ich mir am anfang immer alles zu kompliziert vorstelle ^^
Ein sicherer Umgang mit Templates/ Template-Engines gehört meines Erachtens nach zu den "Basics" bei der Entwicklung von Web-Applikationen jeglicher Art.

Zitat:
Zitat von mymaksimus Beitrag anzeigen
Und sry aber ich werde keine Templates oder Frameworks benutzen. Das habe ich noch nie getan und werde es auch ausser bei der 3d entiwcklung nicht machen ^^
Manche Leute klettern nunmal lieber über den Zaun, auch wenn das Hoftor offen steht. Das mag für Lernzwecke zwar ganz sinnvoll sein, aber große Projekte wirst du mit dieser Philosophie niemals stämmen können ohne an Qualität einbüßen zu müssen.

Zitat:
Zitat von mymaksimus Beitrag anzeigen
Aber nochmal um es zu verdeutlichen:

SERVER
______ root
__________index.php (verarbeitet datei1.html und gibt es aus)
__________sonstige dateien, css bilder usw
______ irgendein Ordner den man nicht einfach aufrufen kann
__________datei1.html
__________datei2.html

So ungefähr? und diesen Ordner schütze ich dann mit htcacces, oder? Auch wenn mir das hier nicht wirklich was bringen würde.
Wie du diese Ordner "schützt" ist deine Sache. In meinen Umgebungen sind sie meistens gar nicht von außen zu erreichen.

Viele Grüße,
lotti
__________________
Empfehlenswerte Links:
jsFiddle | JavaScript Patterns | RedBeanPHP | Mozilla Developer Network -/- W3C Validator | JSLint
Mit Zitat antworten
  #17 (permalink)  
Alt 29.08.2013, 20:11
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 17.08.2013
Beiträge: 242
mymaksimus befindet sich auf einem aufstrebenden Ast
Standard

Wie können sie denn "nicht erreichbar" sein, wenn sie auf dem server liegen? :P Sind die auf der Datenank? oder sonstwo?
Mit Zitat antworten
  #18 (permalink)  
Alt 29.08.2013, 20:58
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

Durch HTACCESS kann der Zugriff auf die Dateien verwehrt werden.
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #19 (permalink)  
Alt 29.08.2013, 21:43
Erfahrener Benutzer
XHTMLforum-Mitglied
 
Registriert seit: 13.07.2009
Beiträge: 433
Austen sorgt für eine eindrucksvolle AtmosphäreAusten sorgt für eine eindrucksvolle Atmosphäre
Standard

Leg sie außerhalb des DocumentRoot ab, dann sind sie nicht erreichbar.
Mit Zitat antworten
Sponsored Links
  #20 (permalink)  
Alt 29.08.2013, 21:59
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 17.08.2013
Beiträge: 242
mymaksimus befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von Thielo Beitrag anzeigen
Durch HTACCESS kann der Zugriff auf die Dateien verwehrt werden.
Das ist mir bewusst aber lotti meinte ja das geht auch anders. Aber ich dachte root wäre sozusagen alles?
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

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 an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Teile der Website verschieben sich bei Auflösung Panamajack (X)HTML 7 19.06.2010 15:53
Norwegische Webmaster gegen veraltete Browser Schelm.isch Offtopic 255 23.04.2009 22:27
analysetool für websites opa-rudi Site- und Layoutcheck 23 05.08.2008 15:33
Bitte um Feedback zu meiner überarbeiteten Website Sen-nefer Site- und Layoutcheck 9 08.02.2008 16:49


Alle Zeitangaben in WEZ +2. Es ist jetzt 16:25 Uhr.