Jump to content

Alternative zu fopen!


Recommended Posts

Moin,

ich überprüfe zurzeit mit fopen ob Dateien auf einen anderern Server vorhanden sind!Diese Methode ist aber nicht 100% genau,da es öfters zu Fehlermeldungen kommt obwohl die Datei(en) vorhanden sind.

Und nun zu meiner Frage:

Gibt es andere methoden um zu überprüfen ob Dateien auf einen anderen Server sind? - oder - kann man da mit fopen was rausholen?


Mein jetziger code:

$dl = file("array/$download.txt"); 
$daten = file("include/downloadseite.txt");
include("include/header.txt");
$url = $dl[9];
$url = str_replace("\n"," ",$url);
$url = trim($url);
@$file = fopen ("$url", "r");
if ($file) {
//htmlcode
}
else
{
//Fehlercode
}

Link to post
Share on other sites

ja ab php 5 mit paar zusatzfunktionen...

ich benutze aber noch zzgl 4 da ich noch keine zeit und Lust hatte meinen Server upzugraden.

wobei hier http://de.php.net/file_exists ( wo ich gerad erstmal geguckt hab) auch steht:

"Anmerkung: Diese Funktion kann nicht mit entfernten Dateien arbeiten, da der Zugriff auf die Datei, die bearbeitet werden soll, über das Dateisystem des Servers möglich sein muss.

"


ich suche im enddefekt ja nur eine sichere methode da mein downloadarchiv im schnitt 20Fehler von nicht vorhandenen dateien in der woche auspuckt obwohl davon an die 17Vorhanden sind.

Was sich Negativ auf die User auswirkt da die dann auf eine Fehlerseite geleitet werden!

Link to post
Share on other sites

gut die idee wär zwar gut aber wie sollte ich das realisieren,

mit schleifen kenn ich mich zwar aus,

aber ich kann doch nich 5mal das durchlaufen lassen ->

@$file = fopen ("$url", "r");

if ($file) {

//htmlcode

}



klär mich bitte auf wenn ich was falsch verstanden hab,

denn sowas ohne fehlermeldung hab ich bis jetzt noch nie gemacht!

Link to post
Share on other sites

also ich hab den code mal mit deinen verbunden!

$url = $dl[9];

$url = str_replace("\n"," ",$url);

for($i=0;$i<5;$i++){

$fp=@fopen('$url','r');

if($fp) $helper=TRUE;

@fclose($fp);

}

if($helper) {



aber da kommen nur fehlerhafte seiten bei raus...

Link to post
Share on other sites

ich weis ja nicht was dein fehler ist

also vom code her seh ich keinen....

dir for sollte, so wie ich sie dir gegeben habe funzen


velleicht mal bissel mehr code posten, damit man mal was sieht....

wird der fehler in der if sein....dann ist irgend was anderes(die uir) nicht die richtige sein


gruß raiserle

Link to post
Share on other sites

Mit fopen() zu überprüfen, ob eine Datei existiert ist einfach schlecht, weil man an ein vordefiniertes Timeout gebunden ist und fopen() nur darauf eingeht, ob die betreffende Datei erreichbar ist (man denke an 403 - Forbidden).


Im PHP Manual findest du auch ein Beispiel.

Link to post
Share on other sites
Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...