php-resource




Archiv verlassen und diese Seite im Standarddesign anzeigen :
Variable aus anderer *.php, welche über Array geladen wird!


 
wheeler-hl
08-05-2015, 15:54 
 
Hey Moin.

Ich bin ganz neu hier und hoffe das ich hier Hilfe finde und eventuell auch noch mal jemand anderen Helfen... Ich bin kein PHP Pro- aber auch kein ganz blutiger Anfänger mehr!

Nun aber brauche ich Hilfe*lach*



Ich habe 3 Dateien

"beispiel-1.php" (fortlaufend und randvoll beschrieben mit $Variablen)
"control.php" (hier ist ein Array in dem "beispiel-1.php" und die fortlaufenden Dateien stehen.
"ausgage.php" (beinhaltet eine Foreach-Schleife, welche auf das Array aus control zugrieft(include))

Nun befindet sich in der beispiel.php eine Variable welche ich in der Ausgabe benötige...

Wir befinden uns hier in der "ausgabe.php"

foreach($blog_page['links'] as $typ ){
if($typ['position']['liste'] == 'ja') ## <-- ##
echo '<li><a href="' . $typ['link'] . '"> ' . $brotkrume2 . '</a></li>' ;
}

>>> $brotkrume2 <<< ist die Variable welche als Linktext Verwendet werden soll und aus der beispiel.php kommt.

Ich weiß das so etwas wie
echo '<li><a href="' . $typ['link'] . '"> ' . include $typ['link'] . $brotkrume . '</a></li>' ;
nicht funktioniert...

In der "beispiel-1.php" befinden sich nur Variablen und kein HTML, JS oder sonst was

soooo...

Wie bekommt ich $VARIABLE_XY aus der "beispiel.php" in die "ausgabe.php", welche über ein Array in der "control.php" geladen wird.

Kann mir wer folgen? Ich glaub ich laufe in Kreis...

Wie bekomme ich das umgesetzt?!

Gruß

 
wahsaga
08-05-2015, 18:15 
 
beispiel-1.php per include einbinden …

 
h3ll
08-05-2015, 20:22 
 
Prinzipiell ist davon abzuraten, dass durch ein Include wie von Zauberhand plötzlich neue Variablen da sind. Das macht den Code sehr schwer nachvollzieh- und wartbar. Warum verwendest du nicht eine andere Form um die Daten zu speichern (ini, xml, json, SQL, usw.), die dafür deutlich besser geeignet sind?

 
fireweasel
11-05-2015, 13:40 
 
Ich bin kein PHP Pro- aber auch kein ganz blutiger Anfänger mehr!

Nun aber brauche ich Hilfe ...

Ich habe 3 Dateien

"beispiel-1.php" (fortlaufend und randvoll beschrieben mit $Variablen)
"control.php" (hier ist ein Array in dem "beispiel-1.php" und die fortlaufenden Dateien stehen.
"ausgage.php" (beinhaltet eine Foreach-Schleife, welche auf das Array aus control zugrieft(include))

Nun befindet sich in der beispiel.php eine Variable welche ich in der Ausgabe benötige...

Du suchst vermutlich eine Web-Template-Engine (http://de.wikipedia.org/wiki/Template-Engine#Template-Engines_f.C3.BCr_PHP).



foreach($blog_page['links'] as $typ ){
// ...
echo '<li><a href="' . $typ['link'] . '"> ' . $brotkrume2 . '</a></li>' ;
}



Eine gute Template-Engine löst auch ein Problem, das dein selbstgebauter Code hat: Wenn $brotkrume2 Zeichen enthält, die in HTML eine spezielle Bedeutung haben, kann damit die komplette HTML-Page verändert werden. Solche HTML-Injections (http://en.wikipedia.org/wiki/Code_injection#Examples_of_code_injection) sind normalerweise ungewollt und sollten unterbunden werden (http://wiki.selfhtml.org/wiki/Artikel:Kontextwechsel/erkennen_und_behandeln#HTML).

Darüber hinaus kennt echo (http://docs.php.net/manual/en/function.echo.php) den Komma-Operator. Damit könntest du auf das (unnötige) Verketten von Teilstrings verzichten. In etwa so:

echo '<li><a href="', $typ['link'], '"> ', htmlspecialchars($brotkrume2), '</a></li>';


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:47 Uhr.