Alexander: Popup-Problem

Hallo zusammen,

Beschreibung
1te Seite: Formular, sendet bei Submit die Daten an eine PHP-Seite, die die Inhalte in eine DB schreibt. Der Tag sieht so aus:
<form action="test.php" method="post" onSubmit="Popup()" name="danke" target="danke">

die Popupfunktion macht folgendes:
window.open("","danke","height=360,width=280");

Ergebnis: Ein neues BROWSER-Fenster wird geöffnet und die Inhalte der PHP-Seite eingetragen.

PROBLEM: Ich will eigentlich kein normales Browserfenster mit den Menüleisten, sondern ein Popupfenster mit Titelleiste.

FRAGE: Wie kann ich einerseits die Funktionalität der PHP-Seite ansprechen und zum anderen ein POPUPfenster (kann auch eine andere Seite sein) öffnen? Wichtig: die Ursprungsseite mit dem Formular darf sich nicht ändern!

Bitte um Feedback!

Grüße
Alexander

  1. Hallo,

    Wie Du genau das Aussehen eines popups bestimmt steht hier:
    http://selfhtml.teamone.de/javascript/objekte/window.htm#open

    Ausserdem - Waere es nicht besser Du spaltest das popup vom der php-Seite ab? Also, einfach was in der Richtung:

    $popuphtml = "<html><head></head></body>Danke ". $submittedVariables ."</body></html>"
    echo "<script language='JavaScript'>win2=window.open('','danke','height=360,width=280'); danke.document.write('",$popuphtml,"');</script>";

    am Ende des php scripts von test.php setzen.

    Gruss, Mel

    1. oops, kleiner Fehler,
      statt win2=window.open... muss es danke=window.open.. heissen

      Mel

      Hallo,

      Wie Du genau das Aussehen eines popups bestimmt steht hier:
      http://selfhtml.teamone.de/javascript/objekte/window.htm#open

      Ausserdem - Waere es nicht besser Du spaltest das popup vom der php-Seite ab? Also, einfach was in der Richtung:

      $popuphtml = "<html><head></head></body>Danke ". $submittedVariables ."</body></html>"
      echo "<script language='JavaScript'>win2=window.open('','danke','height=360,width=280'); danke.document.write('",$popuphtml,"');</script>";

      am Ende des php scripts von test.php setzen.

      Gruss, Mel

      1. Hi Mel,

        danke... hm, ich weiß aber nicht, ob mir das bei meinem Prob weiterhilft?! Das Hauptproblem besteht wohl darin, das ich im FORM-Tag auf eine PHP-Seite verweise, die dann geöffnet wird. Dabei wird eben eine ganz neue Browserinstanz geöffnet, mit allem drum und dran. Ein normales Popup hat ja diese Optionen alle nicht, darum muß ich sie ja auch nicht ausschalten?!

        Kann ich die Verarbeitung der Daten <form action="test.php"..blabla> nicht so ablaufen lassen, das KEIN neues Fenster geöffnet wird und ich dem onsubmit-Befehl dann problemlos das Popup zuweisen kann?

        Klingt vielleicht etwas wirr, aber ich hab nen Knoten drin...

        Gruß und Danke,
        Alexander

        1. Hmm, Du willst also wirklich alle Daten in den Formfeldern beibehalten?
          Eine Idee waere, dass Du es so machst wie ich's vorher beschrieben habe, ABER am Ende des php codes von test.php (also nach dem echo popup script) noch folgende Zeile einfuegst:
          echo "<script language='JavaScript'>history.back();</script>";

          Was besseres, bzw wie man's mit Deiner Idee machen koennte, faellt mir jetzt nicht ein.

          Gruss, Mel

          1. *grins* Vielleicht zäume ich das Pferd einfach von hinten auf. Momentan läufts so.

            1. Daten in Formular eingeben
            2. Submit

            • Daten werden per action="post" an die PHP-Seite weitergeleitet und dort in eine DB eingetragen
            • gleichzeitig wird das Formular resettet
              document.forms.formularname.reset();

            Effekt:

            • das Formular ist abgeschickt und danach wieder leer
            • die PHP-Seite hat die Daten eingetragen

            Eigentlich ist ja alles wunderbar ;-) Ich will nur nicht, das die PHP-Seite die durch den "action"-Tag aufgerufen wird, als normale Browserinstanz geöffnet wird - sondern als simples Popup-Fenster. Und ich will nicht, das sich die Seite, in der sich das Formular befindet neu lädt, oder in dieser Browserinstanz die PHP-Seite geladen wird. Macht ja keinen Sinn, oder denke ich bloss zu verquer?

            Naja, trotzdem danke für Deine Hilfe!
            Alexander

            1. Naja, wie Du ein popup window ohne button-leiste etc machst weisst Du doch bestimmt -
              danke = window.open("","danke","height=300,width=400,toolbar=no,location=no,resizeable=no,menubar=no");

              Dh mit onSubmit im Form-tag wird obiges pop-up aufgerufen - ok. Dass sich das Formular abschickt und dadurch die Seite neu geladen wird laesst sich nicht vermeiden. Wenn der Rest mit dem Target="danke" so klappt wie Du willst, halte ich mich raus ;)

              Gruss, Mel

              1. Thanks a lot, Mel ;-)

                Mhmhm, das mit den Zusatzparametern dachte ich mir auch, klappt aber nicht. Die "popup"-Seite lässt sich nur mit einem <body onload="resizeto..."> anpassen, die Parameter im window.open ignoriert er einfach (wobei auffällig ist, das unter Netscape die Sache klappt... *grin*, aber der IE 5x streikt und macht andere Höhenangaben).

                Und leider hat das resizeto keine Parameter bez. Menüleisten. Ich schätz mal, ich muß das Ganze nochmal anders machen, aber darüber mach ich mir vielleicht morgen nochmal Gedanken...

                Nochmal danke :-)
                Alexander