Pierre: Neues Fenster mit Weitergabe von Variablen in Querystring

Hi

In einer PHP Umgebung möchte ich einen Fileupload in einem separaten Fenster erstellen. Dazu muss ich per Query-String Informationen ins neue Fenster mitgeben, die ich dort zum speichern in der Datenbank brauche. Ich hab ne einfache Funktion geschrieben:

function uploadBild(id,seite,tabelle) {
win = window.open("z_bearbeiten_upload_bild.php?id=" + id + "&seite=" + seite + "&tabelle=" + tabelle, "Fenster1", "width=400,height=400,left=100,top=100,scrollbars=no,status");
}

Die Werte "id" und "seite" sind Zahlen und "tabelle" ist ein String. Ich kenn mich mit JavaScript leider net gut aus und schaffs einfach nicht, dass das Teil funktioniert. Wenn ich nur "id" und "seiten" benutze und alles mit "tabelle" weglasse gehts, aber sobald ich "tabelle" welches strings weitergeben soll, tut mir JavaScript kein Fensterchen mehr auf.

Sicher kann mir einer der vielen Profis hier weiterhelfen.

Besten Dank
Pierre

  1. Hallo Pierre!

    Was unterscheidet die drei Variablen in deinem String - richtig: das &!

    win = window.open("z_bearbeiten_upload_bild.php?id=" + id + "&seite=" + seite + "tabelle=" + tabelle, "Fenster1", "width=400,height=400,left=100,top=100,scrollbars=no,status");

    Den Rest hab ich mir nicht angesehen - aber ich denke, das wars.

    mfg

    norbert =:-)

  2. Hallo Pierre!

    So ist das mit den vorlauten Dummschwätzern - hab mich selbst verschaut ;-)

    Werde mich gleich drum kümmern ...

    mfg

    norbert =:-)

    1. Danke erst mal

      Ne du hast ja recht *schaem*, hab den Code vorher von Hand nochmal abgetippelt und das & wirklich vergessen. Funzt aber trotzdem net.

      Ich habs jetzt mal ganz abgespeckt versucht. So sieht meine Funktion jetzt aus: Ich übergebe nur noch den Wert tabelle der ein String ist und z.B. die Werte seite, intro, adresse usw enthält.

      function uploadBild(tabelle) {
       win = window.open("z_bearbeiten_upload_bild.php?tabelle=" + tabelle, "Fenster1", "width=400,height=400,left=100,top=100,scrollbars=no,status");
      }

      Wenn ich über den Link fahre zeigt die Statuszeile auch wunderbar an, was ich übergebe:

      javascript:uploadBild(seiten)

      ... und nix tut sich. Sobald ich Zeichenketten übergebe gehts net. Ich bin leider gar nicht fit in JavaScript.

      any ideas?

      1. Hallo Pierre!

        1.) Wird das Fenster nicht geöffnet - oder sind nur keine Parameter übergeben worden.

        2.) Probier mal ...

        function uploadBild(tabelle) {
        win = window.open("z_bearbeiten_upload_bild.php?tabelle=" + tabelle, "Fenster1", "");
        }

        ... und schau, ob Du überhaupt einen querystring siehst. Ich denke, dass man ? und & entsprechend Codieren muss, weiß aber grade die Codes nicht.

        mfg

        norbert =:-)

        1. Wenn ich "tabelle" eine Zahl übergebe läuft alles wunderbar, wenn ich "tabelle" aber einen String z.B. "seiten" übergebe läuft nix mehr. Wenn ich den HTML Source anschaue siehts bei Zahlen so aus:

          <a href="javascript:uploadBild(110)">Bild hochladen</a>
          und damit geht alles wunderbar, Fenster öffnet sich, ich kann mit PHP die übergebene Variable auslesen. Alles Prima.

          Wenn ich den HTML Source bei übergebenen String auschaue siehts so aus:

          <a href="javascript:uploadBild(seiten)">Bild hochladen</a>
          und nix geht mehr. Wie ich vorher schon sagte in der Statuszeile sehe ich jeweils den richtigen Wert. Im obigen Beispiel javascript:uploadBild(110) im unteren Beispiel javascript:uploadBild(seiten).

          Schaut doch recht normal aus oder net? Ich denke aber, dass ich wie in PHP einen String vielleicht in "" setzen muss. Da hab ich gestern schon rumprobiert und bin nicht weitergekommen.

          Hab mir eben das Dingens noch in Netscape anzeigen lassen und die JavaScript Console gibt folgenden Error:
          Error: seiten is not defined
          Source File: javascript:uploadBild(seiten)
          Line: 1

          1. Hallo Pierre!

            Dazu kann ich nur sagen:

            javascript:uploadBild('seiten')

            Man beachte die Hochkomma!

            hihi - wohl aneinander vorbei geredet ;-)

            mfg

            norbert =:-)

            1. Danke, danke, danke.

              Ich könnt mir die Haare raufen. Hab gedacht, dass es an sowas liegt, hab aber immer an der Funktion in JavaScript rumgeschnipselt, anstatt im HTML-Code die übergebenen Werte in Hochkomma zu stellen.

              Supi du hast mich erlöst.
              Schöne Grüsse aus dem sommerlichen Zürich

      2. Hallo Pierre!

        Habs grade gefunden und getestet - bei mir klappts - also versuchs bitte auch mal ...

        function uploadBild(id,seite,tabelle)
        {
         win = window.open("z_bearbeiten_upload_bild.php%3Fid=" + id + "%26seite=" + seite + "%26tabelle=" + tabelle, "Fenster1", "width=400,height=400,left=100,top=100,scrollbars=no,status=no");
        }

        mfg

        norbert =:-)