Neuigkeiten:

still alive...

Hauptmenü

file_exists() Problem php 5.2.2

Begonnen von Powie, 21. Mai 2007, 11:58:56

Vorheriges Thema - Nächstes Thema

k00ni

Nabend,
mir scheint es, als prüft der mahe einfach, ob man die Datei includieren kann. Wenn nicht, dann existiert sie auch nicht. Das ist sein Ansatz. Somit würde dann auch Powie\'s Funktion nicht ins Blaue schießen.
Nur als Versuch, weil ichs hier noch nicht gelesen habe.
 

if (!@file_exists ($file)) 
{
   // spucke fehler aus
}
else
{
  // mach was mit der Datei
}

 
 
oder
 

@file_exists ($file) or die (\'Fehlermeldung\');

 
 
Grüße

raiser

@ kooni doch, musst du gelesen haben... weil ichs schon geschrieben hatte /uploads/emoticons/icon_e_wink.gif.fcb053ab2c91cb6224c03a16c6332abf.gif\" alt=\";)\" />
mir ging es aber darum, weil powie meinte er versteht nicht, warum der fehler kommt bzw die warnung
ich bin der meinung, das es kein bug ist, sondern so gewollt ist, weil das directory fehlt... somit fehlt dann zwar auch das file, aber es wird eine warung durch open_basedir erzeugt.
gruß raiserle

Wissen ist das einzige Gut, dass sich vermehrt, wenn man es teilt! (Marie von Ebner-Eschenbach)




Irren ist menschlich!




Wer andern eine Grube gräbt,


sollte darüber nachdenken,


ob sie tief genug ist!!!!




Kameradschaft ist, wenn der


Kamerad schafft !!!!


Powie

Sagt mal, könnt ihr nicht lesen /uploads/emoticons/icon_e_smile.gif.4a0acefcb917340d2c82e5239c009e6e.gif\" alt=\":)\" />
Das folgende Script:
 

 
liegt hier: http://www.powie.de/temp/fe.php\" rel=\"external nofollow\">http://www.powie.de/temp/fe.php
Seid ihr der Meinung das die angegebene Fehlermeldung richtig ist?
 :gaga:

mahe

nö, aber deswegen hab ich ja den Workaround gepostet /uploads/emoticons/icon_e_wink.gif.3167d127940f44558fbf1ccd9b6d60a9.gif\" alt=\";-)\" />

http://blog.mahe.at\" rel=\"external nofollow\">http://blog.mahe.at/wp-content/uploads/2007/06/88x31_1.jpg\" alt=\"88x31_1.jpg\">


Ja, diese Signatur dient zur Werbung!


Und dass ich meine Posts wiederfinde ...


k00ni

Nabend,
wir sind auch gerade verwirrt. In der Funktionsberschreibung steht drin, dass er die Existenz von Dateien oder Ordnern prüft. Folgendes sinnloses Verhalten haben wir noch bemerkt.
Lässt man folgendenen Schnipsel laufen,
 

 

 
 
und der Ordner test existiert, dann kommt keine Warnung, wie oben beim Powie.
Nehme ich aber hingegen den Schnipsel von ihm, so kommt eine Warnung.
Sinnlos: Weil er bekommt in beiden Fällen einen gültigen Ordnerpfad, denn DOCUMENT_ROOT beinhaltet den root-Ordner, also das html-Verzeichnis. Und auch der Ordner test bestand bei uns.
Nur komischerweise hat er bei der Pfadangabe mit dem Ordner test nicht rumgemeckert.  :gaga:
Die müssen da was in der Funktion rumgeschraubt haben, denn es schien ja vor der 5.2.2 lauffähig gewesen zu sein.
[edit]Anmerkung gestrichen. Siehe dazu mahes vorletzten Post.[/edit]
 
Nächtliche Grüße

Mahes Version ist noch aus einem anderen Grund die Beste: Im Gegensatz zum Test auf file_exists() ist die Überprüfung, ob ein File inkludiert werden konnte, nicht von Race Conditions gefährdet. Wenn der Code besonders performant sein soll, kann man auch noch auf das _once verzichten.

k00ni

Wie schauts aus, Powie?  /uploads/emoticons/icon_e_biggrin.gif.1a84f5257b36e14b36d04985314f877f.gif\" alt=\":-D\" />

Powie

leider bleibt es auch mit php 5.2.3 das gleiche Problem  :muha:

all your base are belong to us / Discord