vitodoncorleone: location href ruft falsche URL auf

Hallo,

brauch mal eure Hilfe. Folgendes Problem:
Ich hab ein Popup mit einem Formular, womit man den Speicherort einer Datei verschieben kann.

Das Script verschiebt die Datei und prüft, ob der Vorgang erfolgreich war. Wenn ja möchte ich mit window.location.href die Url einer php-Datei aufrufen, z.B.:

"../ordner/change_savepath.php?result=true"

Wenn die Datei korrekt verschoben werden konnte und das "result=true" ist, ändert die php-Datei den zur Datei gehörenden Speicherpfad in der Datenbank ab.

Aber irgendwie scheint das mit location.href nicht so ganz zu funktionieren. Er verschiebt zwar die Datei auf dem Filesystem, kann aber dann die o.g. URL nicht aufrufen.

Er kommt bis "../ordner/" und sagt dann: "Zugriff verweigert".

Dadurch wird zwar die Datei auf dem Filesystem verschoben, aber in der Datenbank bleibt der alte Dateipfad erhalten.

Kann es an der Konfiguration des Apache liegen dass sich der Link nicht  direkt aufrufen lässt?

Danke schon mal im Voraus für eure Hilfe.

MfG
DonCorleone

  1. hi,

    Aber irgendwie scheint das mit location.href nicht so ganz zu funktionieren.

    "Irgendwie" zeigst du überhaupt keinen Code, der irgendwas mit location.href in Javascript zu tun hätte.

    Bitte lies zuerst </hilfe/charta.htm#tipps-fuer-fragende>, und versuch's dann noch mal mit einer brauchbaren Problembeschreibung.

    gruß,
    wahsaga

    --
    /voodoo.css:
    #GeorgeWBush { position:absolute; bottom:-6ft; }
    1. Hallo,

      sorry, anbei mal der Quellcode. Wie schon gesagt, bis zum location.href funktioniert alles wunderbar. Der Code wird in einem Popup ausgeführt.

      Die Funktionen createRights und deleteRights prüfen nur, ob der User Schreib- und Löschrechte in den beiden Ordnern besitzt. Ich erstelle in beiden Ordnern eine txt-Datei und lösche diese wieder. Treten dabei Fehler auf (z.B. kann nicht gelöscht werden) weiß ich, dass die Berechtigung fehlt.

      //verschiebt eine Datei von Verzeichnis x nach y
      function moveFileTo(source, destination, revis, sourcepath, destinationpath)
      {
       fso = new ActiveXObject("Scripting.FileSystemObject");
      // Schreibrecht im Zielordner
       var create_right = createRights(destinationpath);
      // Löschrecht im Quellordner
       var delete_right = deleteRights(sourcepath);

      if (create_right == true && delete_right == true) {
        try {
         fso.MoveFile(source, destination);
        } catch(err) {
        alert(err.description);
        }

      if (file_exists(destination) == true && file_exists(source) == false)  {
       window.location.href("http://x.x.com/ndms/change_savepath.php?result=true&rev="+revis+"&dest="+destinationpath);
        } else {
         fso.MoveFile(destination, source);
        }

      } else {
       if (create_right == false) {
        alert ("Sie haben keine Berechtigung zum Erstellen im Zielordner!\nDie Änderung wurde NICHT übernommen!");
       } else if (delete_right == false) {
        alert ("Sie haben keine Berechtigung zum Löschen im Quellordner!\nDie Änderung wurde NICHT übernommen!");
       }
      }//if

      }//copyFileTo

      Hoffe Du kannst mir weiterhelfen. Sorry dass ich den Quellcode nicht gleich gepostet hab :-(.

      MfG
      DonCorleone