Abfrage, ob eine Datei existiert

Wenn diese Datei unter derselben Domain beheimatet ist, kannst du per XMLHttpRequest eine Anfrage dahin senden und erkennst am Status(200), ob sie da ist.
 
Danke für die Antwort.

Die Datei, die abgefragt werden soll, liegt im gleichen Verzeichniss.

Wie genau sieht so eine Anfrage aus?
 
Habe diesen Code gefunden:
HTML:
function example(url) {
 xmlhttp.open("HEAD", url,true);
 xmlhttp.onreadystatechange=function() {
 if (xmlhttp.readyState==4) {
   if (xmlhttp.status==200) alert("URL Exists!")
    else if (xmlhttp.status==404) alert("URL doesn't exist!")
     else alert("Status is "+xmlhttp.status)
  }
 }
 xmlhttp.send(null)
}

die Funktion wird so aufgerufen:
HTML:
example('test.html');

Bei mir klappt das so aber nicht.
Was ist daran Falsch?
 
Habe oben jetzt noch den Text hinzugefügt:
HTML:
var xmlhttp=false;
/*@cc_on @*/
/*@if (@_jscript_version >= 5)
// JScript gives us Conditional compilation, we can cope with old IE versions.
// and security blocked creation of the objects.
 try {
  xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
 } catch (e) {
  try {
   xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
  } catch (E) {
   xmlhttp = false;
  }
 }
@end @*/
if (!xmlhttp && typeof XMLHttpRequest!='undefined') {
  xmlhttp = new XMLHttpRequest();
}

Wenn ich das Script auf dem Server ausbrobiere, funktioniert es einwandfrei.
"URL exist" und "URL doesn't exist" wird richtig angezeigt.

Wenn ich das Script local ausprobiere, erscheint nur "Status is 0" und "Status is 2".

Hat es dieselbe Bedeutung?
 
Ich möchte das Programm gerne lokal und ohne Server nutzen.

Also lokal sagt er mir den Status 0, wenn die Datei existiert und Status 2, wenn sie nicht existiert.

Das reicht doch, oder?
 
Willst du es auch später ausschliesslich lokal benutzen?
Wenn ja, benutzt du Windows?
Wenn ja....unter Windows hast du andere Möglichkeiten, solche Informationen per J(ava)Script abzufragen(mit und ohne Browser/IE).... was genau hast du denn sonst noch mit dem "Programm" vor?

Was den Status angeht... das hab ich so noch nicht probiert, aber XMLHttpRequest sendet eine HTTP-Anfrage, welche im lokalen Dateisystem ohne Webserver nicht möglich ist.
 

Neue Beiträge

Zurück