Standard Paths definieren

cola1

Mitglied
Hallo,

bin grade am PHP lernen und habe nun nach dem Quakenet Tut den Code vom Template getrennt.

Sieht nun ähnlich wie folgt aus:
includes (functions.php)
themes (theme -> images, templates, style.css)
languages (de.php, en.php)

Möchte nun aus der header.tpl aus themes/templates/ auf die style.css in themes/ verweisen ohne dabei ../ nutzen zu müssen. Wie definieren ich also einen Path, damit ich bequem einen Code wie folgt nutzen kann:

PHP:
<link rel="stylesheet" type="text/css" media="all" href="<?php standardTemplatePath; ?>style.css" />

Danke :)
 
So geht das. :)

PHP:
$standardTemplatePath = './dein-skript/ordner/dein-style.css'; // kannst es auch anders machen

<link rel="stylesheet" type="text/css" media="all" href="<?php echo $standardTemplatePath; ?>style.css" />
 
Man sollte bei Pfaden generell lieber die Datei weglassen, sonst klappt das mit dem allgemeinenn icht so ;)
PHP:
<?php
$standardTemplatePath = '/pfad/zu/den/stylesheets/';
?>
<link rel="stylesheet" type="text/css" media="all" href="<?php echo $standardTemplatePath; ?>style.css" />
 
Gibt es auch eine Datei in die solche Pfade sinnvollerweise stehen sollten?
Diese ganzen Richtlinien und usw. machen einen am Anfang ziemlich kirre! :D
 
Kann man da nicht lieber das BASE-Element nutzen, das den Standardpfad direkt in HTML definiert und somit eine Menge Zeichen spart?
 
Ist für dieses Szenario sicher sinnvoller:
HTML:
<head>
<base href="http://www.domain.tld" />
<link rel="stylesheet" type="text/css" media="all" href="/css/style.css" />
</head>
 
So geht das. :)

PHP:
$standardTemplatePath = './dein-skript/ordner/dein-style.css'; // kannst es auch anders machen

<link rel="stylesheet" type="text/css" media="all" href="<?php echo $standardTemplatePath; ?>style.css" />

So wäre es besser:
PHP:
$standardTemplatePath = '/dein-css-ordner/dein-style/'; // kannst es auch anders machen

HTML:
<head>
<base href="http://www.deine-webseite.de" />
<link rel="stylesheet" type="text/css" media="all" href="<?php echo htmlspecialchars($standardTemplatePath, ENT_QUOTES); ?>style.css" />
</head>
 
PHP:
$standardTemplatePath = '/dein-css-ordner/dein-style/'; // kannst es auch anders machen

HTML:
<head>
<base href="http://www.deine-webseite.de" />
<link rel="stylesheet" type="text/css" media="all" href="<?php echo htmlspecialchars($standardTemplatePath, ENT_QUOTES); ?>style.css" /></head>
So ein Quatsch ... warum sollte er eine Variable mit htmlspecialchars() behandeln, in der er den String selber 'hardcoded' reingeschrieben hat?
 
Das habe ich so in einem PHP-Sicherheit Artikel gelesen. Vielleicht sogar in diesem Forum? Ich weiss es nicht mehr.

Aber schaden kann es doch nicht. Also warum nicht?
 
Zurück