Nur eine kleine Syntaxfrage

sharp

Grünschnabel
Wie bekomme ich es hin, dass der inhalt der Variable $cat ausgegeben wird und nicht der Variablenname?Tut mir leid, dass ich euch solch eine Frage stelle, aber irgendwie habe ich schon alles ausprobiert und ich komme nicht drauf wie es gehen soll.

PHP:
$content = $_GET['content']; 
$cat	 = $_GET['cat'];

$contents              	= array();
$contents['news']     	= './include/$cat/index.php';
...

include $contents[$content];

Danke schonmal
 
Hallo!

Dein Problem liegt wahrscheinlich darin, dass versucht wird, den Pfad

'./include/$cat/index.php'

zu öffnen statt zum Beispiel

'./include/kategoriename/index.php'

Seh' ich das richtig? (Du hast nicht beschrieben, worin genau das Problem liegt)

Wenn das das Problem ist, muss du die einfachen Anführungsstriche wegnehmen und doppelte hin setzten:

PHP:
"./include/$cat/index.php"

Komplett:

PHP:
$content = $_GET['content']; 
$cat     = $_GET['cat']; 

$contents                  = array(); 
$contents['news']         = "./include/$cat/index.php"; 
... 

include $contents[$content];

Bei einfachen Anführungszeichen ersetzt der Compiler die Variablen nämlich nicht gegen den Inhalt.
Es ginge auch noch so:

'./include/' . $cat . '/index.php'
 
Entschuldige, aber genau das war mein Problem.
Oh das wusste ich nicht, dass dort so ein gravierender Unterschied besteht zwischen den beiden Anführungsstrichen.
Aber so kleinigkeiten können einen den letzten Nerv rauben.
Danke dir!
 
Zurück