|
|
Tracker

: 13.04.2010 : 68
|
| : 18.04.2010, 14:16 : PHP. Include Variabler dateinamen |
|
|
Hallo,
und sorry das ich nerve.
Ich würde gerne Dateien in eine Seite per include laden.
Welche datei es sein soll, soll mittel variabler übergeben werden.
Also domain.de/?a=x&b=y&c=z&d=a
Code sieht so aus
| Code: |
<?php include '/secure/include/titel/$a-$b/$c-$d.php';?>
|
Tut sich aber nix.
Mittels "echo" aber getestet das die Variablen richtig übergeben werden.
Könnte wetten das es wieder nur ein "Kommafehler" ist und ich aufm schlauch steh ...
Ich darf das fragen ich bin ein DAU
http://fast-food.blog.de |
|
| Nach oben |
|
 |
TBT


: 13.02.2008 : 236
|
|
| Nach oben |
|
 |
Tracker

: 13.04.2010 : 68
|
| : 18.04.2010, 14:41 : PHP. Include Variabler dateinamen |
|
|
oh mann ... wieviel man in 5 jahren doch vergisst.
Danke
Ich darf das fragen ich bin ein DAU
http://fast-food.blog.de |
|
| Nach oben |
|
 |
PHPSchmied

: 20.11.2008 : 78
|
| : 18.04.2010, 14:43 : PHP. Include Variabler dateinamen |
|
|
Warum sollte er " nehmen wenn er den trick schon raus hat wie PHP schneller wird.
Wenn dann erkläre ihm das auch richtig und führe ihn nicht wieder auf ein schlechten Programmierstil.
| Code: |
<?php
$a = $_GET['a'];
$b = $_GET['b'];
$c = $_GET['c'];
$d = $_GET['d'];
$file = '/secure/include/titel/'.$a.'-'.$b.'/'.$c.'-'.$d.'.php';
if (file_exist($file)) {
include $file;
}
?> |
Zuletzt bearbeitet von PHPSchmied am 18.04.2010, 14:46, insgesamt 3-mal bearbeitet |
|
| Nach oben |
|
 |
Mork vom Ork

: 08.07.2008 : 2568 : Aufm Friedhof.
|
| : 18.04.2010, 14:43 : Re: PHP. Include Variabler dateinamen |
|
|
| Tracker hat Folgendes geschrieben: |
| Ich würde gerne Dateien in eine Seite per include laden. Welche datei es sein soll, soll mittel variabler übergeben werden. Also domain.de/?a=x&b=y&c=z&d=a |
Oha. Du bist dir hoffentlich im Klaren darüber, dass du gerade bei solchen Aktionen den Inhalt der Parameter strikt prüfen musst.
| : |
| Code: |
| <?php include '/secure/include/titel/$a-$b/$c-$d.php';?> |
|
1. In Zeichenketten, die von einfachen Anführungszeichen umklammert werden, funktioniert die PHP-Unart, Variablen zu ersetzen, nicht.
2. Ich mag nicht so recht glauben, dass die einzufügenden Dateien in einem Verzeichnis mit dem Pfad /secure liegen sollen – dieses würde im Wurzelverzeichnis des Servers liegen und da gibt es nur ein Dutzend fest definierter Systemverzeichnisse, zu denen /secure nicht gehört, das da nicht hinpasst und wo du normalerweise auch keinen Zugriff drauf hättest.
Du meinst vermutlich eher das Basisverzeichnis, das du auch per FTP siehst. Dieses findest du in $_SERVER["DOCUMENT_ROOT"].
Ergo:
| Code: |
<?php
pruefen_ob_a_b_c_und_d_sich_im_bereich_gueltiger_werte_befinden_oder_irgendein_boeser_bube_unfug_zu_versuchen_treibt();
if (ist_zieldatei_vorhanden()) {
include $_SERVER["DOCUMENT_ROOT"] . 'secure/include/titel/' . $a . '-' . $b . '/' . $c . '-' . $d . '.php';?>
}
else {
fehler_da_ziel_nicht_vorhanden()
}
\ |
|
|
| Nach oben |
|
 |
heino

: 21.09.2006 : 833
|
| : 18.04.2010, 16:03 : Re: PHP. Include Variabler dateinamen |
|
|
| Mork vom Ork hat Folgendes geschrieben: |
| Tracker hat Folgendes geschrieben: |
| Ich würde gerne Dateien in eine Seite per include laden. Welche datei es sein soll, soll mittel variabler übergeben werden. Also domain.de/?a=x&b=y&c=z&d=a |
Oha. Du bist dir hoffentlich im Klaren darüber, dass du gerade bei solchen Aktionen den Inhalt der Parameter strikt prüfen musst. |
Na ja. Er hat irgendwie eine düstere Ahnung. Aber nur sehr düster.
... 3. Was passiert wenn man die Url mit Variablen aufruf die keine "Bedutung" haben ? kann man das Irgendwie abfangen ? |
|
| Nach oben |
|
 |
Tracker

: 13.04.2010 : 68
|
| : 18.04.2010, 17:12 : PHP. Include Variabler dateinamen |
|
|
| PHPSchmied hat Folgendes geschrieben: |
Warum sollte er " nehmen wenn er den trick schon raus hat wie PHP schneller wird.
Wenn dann erkläre ihm das auch richtig und führe ihn nicht wieder auf ein schlechten Programmierstil.
| Code: |
<?php
$a = $_GET['a'];
$b = $_GET['b'];
$c = $_GET['c'];
$d = $_GET['d'];
$file = '/secure/include/titel/'.$a.'-'.$b.'/'.$c.'-'.$d.'.php';
if (file_exist($file)) {
include $file;
}
?> |
|
funktioniert prima und auch das mit der else hab ich allein hinbekommen
Noch eine kurze frage.
Ich kann funktionen ja in eine INC packen. diesen includen und dann die einzelnen funktionen aufrufen.
Funzt das auch mit HTML elementen.
Also mit z.B. Metas, Body ?
Ich darf das fragen ich bin ein DAU
http://fast-food.blog.de |
|
| Nach oben |
|
 |
Hasenhuf

: 26.12.2005 : 2625
|
| : 18.04.2010, 22:30 : PHP. Include Variabler dateinamen |
|
|
| PHPSchmied hat Folgendes geschrieben: |
Warum sollte er " nehmen wenn er den trick schon raus hat wie PHP schneller wird.
Wenn dann erkläre ihm das auch richtig und führe ihn nicht wieder auf ein schlechten Programmierstil.
| Code: |
<?php
$a = $_GET['a'];
$b = $_GET['b'];
$c = $_GET['c'];
$d = $_GET['d'];
?> |
|
Völlig sinnloses Umkopieren von Variablen ist also guter Programmierstil?
| Tracker hat Folgendes geschrieben: |
Noch eine kurze frage.
Ich kann funktionen ja in eine INC packen. diesen includen und dann die einzelnen funktionen aufrufen.
Funzt das auch mit HTML elementen.
Also mit z.B. Metas, Body ? |
Eine Gegenfrage, warum findest Du es nicht heraus? |
|
| Nach oben |
|
 |
Tracker

: 13.04.2010 : 68
|
| : 19.04.2010, 11:25 : PHP. Include Variabler dateinamen |
|
|
| Hasenhuf hat Folgendes geschrieben: |
Eine Gegenfrage, warum findest Du es nicht heraus? |
OK...hat auch jemand nen Tipp oder nen Link zur selbsthilfe
Ich darf das fragen ich bin ein DAU
http://fast-food.blog.de |
|
| Nach oben |
|
 |
SloMo

: 04.01.2005 : 4027
|
| : 19.04.2010, 12:01 : PHP. Include Variabler dateinamen |
|
|
| PHPSchmied hat Folgendes geschrieben: |
| Warum sollte er " nehmen wenn er den trick schon raus hat wie PHP schneller wird. |
In diesem Fall würde ich Lesbarkeit wesentlich wichtiger einschätzen, als einen zusätzlichen Prozentpunkt Geschwindigkeit einer einmalig ausgeführten Code-Zeile.
Ansonsten würde ich empfehlen, die ganze Site per C-Code erzeugen zu lassen. Scheiß auf PHP wenn es um Performance geht!  |
|
| Nach oben |
|
 |
Hasenhuf

: 26.12.2005 : 2625
|
| : 20.04.2010, 15:29 : PHP. Include Variabler dateinamen |
|
|
| Tracker hat Folgendes geschrieben: |
| Hasenhuf hat Folgendes geschrieben: |
Eine Gegenfrage, warum findest Du es nicht heraus? |
OK...hat auch jemand nen Tipp oder nen Link zur selbsthilfe |
Ich dachte an ausprobieren, schließlich verwendest Du den Befehl schon und solltest wissen was er macht. Wenn Du weiß welche Bedingungen erfüllt sein müssen, wenn Du PHP-Code ausführbar einbinden willst, dann sollte auch klar sein, was passiert, wenn die Bedingungen dafür nicht erfüllt sind.
Ansonsten, RTFM oder ein Tutorial.
http://de.php.net/manual/de/function.include.php
http://tut.php-q.net/de/ |
|
| Nach oben |
|
 |
Tracker

: 13.04.2010 : 68
|
|
| Nach oben |
|
 |
nerd


: 15.02.2005 : 1733 : AKL
|
| : 23.04.2010, 13:48 : PHP. Include Variabler dateinamen |
|
|
hallo? includes und requires werden doch eingebunden BEVOR irgendwelcher php-code ausgefuehrt wird!
marketing through social media is just like herding cats. and just to make it interesting, many of the cats are drunk and stupid...
blackhat linkkauf und so...  |
|
| Nach oben |
|
 |
DanielS


: 03.08.2008 : 1177
|
| : 23.04.2010, 15:03 : PHP. Include Variabler dateinamen |
|
|
| nerd hat Folgendes geschrieben: |
| includes und requires werden doch eingebunden BEVOR irgendwelcher php-code ausgefuehrt wird! |
Ich weiß zwar nicht, auf was für einen Code Du Dich beziehst, aber so wie die Aussage da steht, stimmt das nicht. |
|
| Nach oben |
|
 |
nerd


: 15.02.2005 : 1733 : AKL
|
| : 23.04.2010, 16:29 : PHP. Include Variabler dateinamen |
|
|
hu? gerade ausprobiert, seit wann funktioniert das denn? hatte das mal in so einem dicken php buch gelesen. sah von aussen jedenfalls voll legit aus und war auch richtig teuer...
marketing through social media is just like herding cats. and just to make it interesting, many of the cats are drunk and stupid...
blackhat linkkauf und so...  |
|
| Nach oben |
|
 |