Blackout bei PHP-Statement
Birgit
- php
Hallo,
Die PHP-Statements
$aa= $_SERVER['DOCUMENT_ROOT'].'/data/hd.txt';
echo $aa;
/*
if (file_exists($aa)){
echo 'OK';
else
echo 'KO';}
*/
haben als Ergebnis:
/var/www/vhosts/xxxxxxx.de/httpdocs/data/hd.txt
Wenn ich das if-Statement aktiviere,
so wird das echo nicht ausgeführt, da das if offensichtlich falsch ist.
Ich finde aber keinen Fehler!
if ( file_exists( $aa ) ) {
echo 'Alles Toll!';
} else {
echo 'Mist!';
}
Es fehlen die geschweiften Klammern, die den if-Block beenden und den else-Block starten.
Hallo Birgit,
hast Du eine Fehlermeldung von PHP erhalten?
Wenn nicht, hilft es in solchen Fällen, die beiden Zeilen
display_errors(1);
error_reporting(E_ALL);
an den Anfang des Scripts zu setzen (natürlich hinter das <?php).
Dann würdes Du die Meldung
Parse error: syntax error, unexpected token "else" in [...] on line 4...
bekommen und hättest darüber nachdenken können, warum er an dieser Stelle das else nicht erwartet.
Wenn Du einen Testserver mit Zugang zur PHP.INI hast, kannst Du dort diese Einstellungen auch direkt eintragen; sie sollten als Vorlage bereits existieren, such mal nach den Namen.
error_reporting = E_ALL display_errors = On
Die Raketenlösung des Rätsels hast Du nun ja schon - viel Spaß weiterhin 😀
Rolf
Hallo Rolf,
Dann würdes Du die Meldung
Parse error: syntax error, unexpected token "else" in [...] on line 4...
bekommen und hättest darüber nachdenken können, warum er an dieser Stelle das else nicht erwartet.
sie, nicht er. Computer müssen weiblich sein. Schwer zu durchschauen, eigenwillig, manchmal sogar etwas zickig, aber doch faszinierend und man möchte sie nicht missen.
Einen schönen Tag noch
Martin
@@Der Martin
sie, nicht er. Computer müssen weiblich sein. Schwer zu durchschauen, eigenwillig, manchmal sogar etwas zickig, aber doch faszinierend und man möchte sie nicht missen.
Sowas kam mir auch in den Sinn.
🖖 Живіть довго і процвітайте
Hello,
[...] was andere schon schrieben...
Außerdem sollte man /data/ immer außerhalb der Document-Root anordnen, wenn man schon Scriptsprachen und Virtual Hosts benutzt.
_skeleton
├── data
├── htdocs
│ ├── bilder
│ ├── images
│ └── robots.txt
├── includes
├── logs
├── sessions
└── tmp
Für alle "bilder"-Verzeichnisse im Baum, egal wo sie genau liegen, schalte ich z. B. zusätzlich in der VHost-Konfigutation immer alle Scriptausführungen aus, da sie per HTTP/s erreichbar sind.
"Images" wären nur System-Icons, die garantiert keine Codes enthalten.
$aa= $_SERVER['DOCUMENT_ROOT'].'/data/hd.txt'; echo $aa; /* if (file_exists($aa)){ echo 'OK'; else echo 'KO';} */
haben als Ergebnis:
/var/www/vhosts/xxxxxxx.de/httpdocs/data/hd.txtWenn ich das if-Statement aktiviere, so wird das echo nicht ausgeführt, da das if offensichtlich falsch ist.
Ich finde aber keinen Fehler!