Hagen: PopUp legt sich über Passwort speichern Dialog.

Hallo zusammen,

ich versuche gerade ein Login-Formular zu schreiben, mit dem es möglich ist, sich von einer Webseite bei einem Onlineshop anzumelden.

Der Onlinshop soll nach dem submit in einem Popup geöffnet werden.
Soweit hab ich das auch hinbekommen...zumindest geht das PopUp auf.

Leider öffnet sich das PopUp mit dem Onlineshop immer über der Passwort-Abfrage des IE.
Bestätigt man diese Abfrage nicht, läd das PopUp leider auch nicht weiter.
Der Besucher sieht also nur ein leeres PopUp.

Hier mal mein HTML-Code:

<form action="http://www.elektro-online.de/j_spring_security_check?domain=www.granzow.de" method="post" name="onlineshop" onsubmit="window.open('', 'onlineshop', 'width=1030,height=700,status=no,resizable=yes,scrollbars=yes')" target="onlineshop">  
	<table align="left" border="0" style="margin-left: 5px; width: 185px;">  
		<tbody>  
			<tr>  
				<td align="left" colspan="2" style="padding-bottom: 1px;">  
					<strong>Onlineshop Quicklogin:</strong></td>  
			</tr>  
			<tr>  
				<td align="left" width="59">  
					Login:</td>  
				<td align="left" width="110">  
					<input id="username" name="j_username" style="width: 100px;" type="text" /></td>  
			</tr>  
			<tr>  
				<td align="left" width="59">  
					Passwort:</td>  
				<td align="left">  
					<input id="password" name="j_password" style="width: 100px;" type="password" /></td>  
			</tr>  
			<tr>  
				<td align="left" colspan="2" style="font-size: 10px;">  
					<a href="http://www.elektro-online.de/register.html?domain=www.granzow.de">Jetzt registrieren!</a> &nbsp;<a href="http://www.elektro-online.de/passwort.html?domain=www.granzow.de" style="color: rgb(255, 0, 0);">Passwort vergessen?</a></td>  
			</tr>  
			<tr>  
				<td align="left" colspan="2">  
					<input src="images/granzow/button_bg_login.png" title="Login" type="image" value="Login" /></td>  
			</tr>  
		</tbody>  
	</table>  
</form>

Hat viell. von euch jemand eine Idee, wie man das hinbekommen könnte, dass der Passwort-speichern Dialog immer über dem PopUp liegt?
Oder der Onlineshop trotzdem angezeigt wird, obwohl man das Dialogfenster noch nicht bestätigt hat?

Gruß
hagen

  1. Moin Moin!

    Der Onlinshop soll nach dem submit in einem Popup geöffnet werden.

    Laß das, das nervt und fällt immer öfter auf die Nase, dank Popup- und Javascript-Blockern. Öffne den Shop in dem Fenster, in dem sich der Kunde auch anmeldet.

    Hier mal mein HTML-Code:

    Die letzten 10 Jahre sind spurlos an Dir vorbei gegangen, oder? Tabellen-Layout mit Pixelgrößen, Inline-CSS, keine Labels, einfach nur gruselig.

    Ein weiteres Problem: Du öffnest das ätzende Popup BEIM Absende-Vorgang, nicht erst nach der erfolgreichen Anmeldung.

    Alexander

    --
    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
    1. Ob das nervt oder nicht, liegt leider nicht in meiner Macht :)
      Das mit dem Tabellenlayout war für mich eben die einfachste Variante für den Anfang.
      Wie bekomm ich das PopUp denn nach der Anmeldung geöffnet?

      1. Moin Moin!

        Wie bekomm ich das PopUp denn nach der Anmeldung geöffnet?

        Mit der Antwort auf den Login-Versuch vom Server. Die dürfte typischerweise ein HTML- oder XHTML-Dokument sein. Wenn Du es ganz geschickt angehst, kann dieses Dokument versuchen, automatisch ein Popup zu öffnen, und andernfalls den Shop normal anzeigen. Stichworte: Unobtrusive JavaScript, try-catch. Tip: Bring den Shop und das Login erst einmal so zum Laufen, und frickel dann den Popup-Quatsch dran.

        Alexander

        --
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
        1. Moin,
          am Shop selber kann ich leider nix ändern :(
          Das PopUp muss schon irgendwie von dem Login aus geöffnet werden.
          Könnte man das irgendwie mit in action="" packen?

          1. Moin Moin!

            am Shop selber kann ich leider nix ändern :(

            Mußt Du das?

            Das PopUp muss schon irgendwie von dem Login aus geöffnet werden.

            Das ist Unsinn. Wenn Du den Shop im Popup öffnest, ohne ein erfolgreiches Login zu haben, braucht der Shop überhaupt kein Login. Wenn der Shop durch ein Login geschützt sein soll, darf das Popup erst dann geöffnet werden, wenn das Login erfolgreich war.

            Könnte man das irgendwie mit in action="" packen?

            Öffne den Shop, sobald das Login erfolgreich war, sprich sobald der Webserver auf die Login-Anfrage (abgeschicktes Formular) eine positive Antwort liefert. Siehe auch hier.

            Alexander

            --
            Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
            1. Hi,
              ich habs jetzt hinbekommen, das erst nach dem Submit der Passwort-speichern Dialog angezeigt wird und nach dem bestätigen das neue Fenster geöffnet wird.
              Leider klappt dann aber das Login nicht mehr.
              Kann ich irgendwie die Felder aus dem Form im action-Teil verwenden?

              1. Moin Moin!

                ich habs jetzt hinbekommen, das erst nach dem Submit der Passwort-speichern Dialog angezeigt wird und nach dem bestätigen das neue Fenster geöffnet wird.

                Das klingt so, als würdest Du das Popup aus der Server-Antwort auf das abgeschickte Formular öffnen. Gut.

                Leider klappt dann aber das Login nicht mehr.

                "Klappt nicht" ist eine Fehlerbeschreibung für Klappmöbel und Taschenmesser. Reden wir über Klappstühle oder Taschenmesser?

                Was ist also der Fehler? Was hast Du erwartet, was passierte stattdessen?

                Vergiß dieses dämliche Popup, bring den Shop erst einmal im Hauptfenster zum Laufen. Wenn das funktioniert, kannst Du Dir immer noch die Kunden vergraulen, indem Du das auf Popup-Betrieb umstrickst.

                Kann ich irgendwie die Felder aus dem Form im action-Teil verwenden?

                Welches Formular? Wenn Du das Formular abgeschickt hast, bekommt der Browser eine neue Seite geliefert. Das alte Formular ist weg. Es gibt kein Formular mehr.

                Zwischen Absenden und der Ankunft der neuen Seite im Browser hatte der Server reichlich Gelegenheit, alle Formularfelder zu verarbeiten und zu beschließen, ob der anfragende Browser rein darf oder nicht.

                Wenn der Browser rein darf, gilt das auch für Folge-Anfragen nach neuen Seiten, z.B. aus dem Popup.

                Ich habe den Verdacht, dass Du Dir selbst im Weg stehst. Nicht zuletzt wegen dieser dämlichen Popup-Idee, und weil Du offenbar Grundkonzepte von HTTP nicht kennst oder nicht verstehst.

                Nenn bitte mal ein paar Namen und Versionsnummern, insbesondere die Shopsoftware und die Software, in der Du das Formular verarbeitest. Idealerweise postest Du Links zur Doku beider Systeme.

                Kannst Du einen Prototyp ohne echte Daten ins Netz stellen und einen Link auf für die Formularseite posten?

                Alexander

                --
                Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
                1. Hallo Alex,

                  das mit dem Formular und der neuen Seite, in welcher der Onlineshop dann geöffnet wird habe ich hinbekommen.

                  Das war sogar rel. einfach zu lösen.
                  Der Shop ist nichts, was es so zum kaufen gibt.
                  Also kein xtCommerce oder so.
                  Da es leider eine Lösung unseres Einkaufsverbandes ist.

                  Eine Dokumentation habe ich daher leider auch nicht und muss mich da weitgehenst selbst durchschlagen.

                  Das Formular selbst ist nur eine kleine HTML-Datei: www.granzow.de/QL2.html

                  Das ganze läuft auf einem Apache Webserver mit PHP 5.2
                  Später soll das Formular dann mal in eine Joomla basierende Webseite integriert werden.

                  Gruß
                  hagen

                  1. Moin Moin!

                    http://www.granzow.de/QL2.html

                    So, ich bin ja gelegentlich mal gemein. Das

                    <form action="http://www.elektro-online.de/j_spring_security_check?domain=www.granzow.de" ...>

                    ist mir schon vorher übel aufgestoßen, insbesondere in Kombination mit der Tatsache, dass dieses Formular nicht auf www.elektro-online.de, sondern auf www.granzow.de gehostet wird.

                    Also hab ich mal ganz naiv bei leerem Formular auf Login geklickt, und oh Wunder, ich lande auf einem völlig anderen Server mit einem völlig anders gestaltetem Formular, das mich nach meinem Login fragt.

                    Noch dazu ist in der ganzen Seite dort nicht eine Spur von granzow.de zu sehen, das scheint also völlig unnötig zu sein. (Mag sein, dass das sofort in einer Session verwurstet wird, dann muß es auch nicht mehr in der Seite auftauchen.)

                    Der Shop ist nichts, was es so zum kaufen gibt.
                    Da es leider eine Lösung unseres Einkaufsverbandes ist.

                    Das macht's nicht schöner, oder? ;-)

                    Gibt es von denen keine vernünftige API, um den Shop in die eigene Website einzubinden?

                    Dein Lösungsansatz ist ein Popup, das aber natürlich auch Nachteile hat. Du brauchst für die volle Funktion zwingend Javascript im Browser, Popup-Blocker sabotieren Dich, und so weiter.

                    Frames bzw. IFrames wärene ein anderer Ansatz, Stichwort http://de.selfhtml.org/html/frames/layouts.htm#schaufenster@title=Schaufenster-Effekt. Das ist im Allgemeinen natürlich unhöflich, aber hier vielleicht ein alternativer Lösungsansatz, so lange der Verbands-Shop sich nicht aktiv gegen Frames wehrt. Auf http://www.granzow.de/ ist ja schon ein Link auf eine (noch 404 werfende) Shop-Seite vorhanden, dort würdest Du mit einem Frameset oder einer Seite mit IFrame Eure Webseite sichtbar halten, und könntest gleichzeitig den Verbund-Shop nutzen. Das geht völlig ohne Javascript, der einzige kleine Nachteil ist, dass das Quick Login so nicht funktionieren wird. Du müßtest mit dem Submit des Login-Formulars auf www.granzow.de nicht nur den Shop in das Frameset laden, sondern gleichzeitig noch einen POST-Request mit den Login-Daten abschicken. Das Frameset und auch IFrames erzeugen aber immer nur GET-Requests, und Du willst auf gar keinen Fall Name und Passwort per GET-Request übertragen. Also bleibt Dir nur, auf den Quick Login zu verzichten und erst einmal einen Link zum Frameset mit dem normalen Login anzubieten.

                    Alexander

                    --
                    Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
                    1. Hallo Alex,

                      erstmal ein rießen Dank für die Hilfe!!!

                      Das man bei einem falschen Login nicht auf der richtigen Seite landet stört mich auch noch.
                      Darüber mach ich mir aber später mal gedanken.

                      Der Shop wird in der Tat auf einem komplett anderen Server gehostet und auch dort komplett Konfiguriert, etc.
                      Wir linken dann lediglich darauf.

                      An IFrames hatte ich auch schon gedacht.
                      Der Shop passt aber von der Größe nicht in unseren Contentbereich, was diese Idee gleich wieder zu nichte gemacht hat.
                      Ansonsten müssten wir ein komplettes redesign unserer Webseite machen.
                      Was aber auch wieder zu Problemen führt, weil die blöde Kopfzeile mit den Logos und der Navigation vom Shop wieder nicht zum restl. Design unserer Seite passt....
                      Wie dem auch sei, es bleibt nur der Link.

                      Was mich jetzt irrtiert ist der 404-Link von dem Du sprichst...
                      Welcher Link führt den ins Leere?

                      Gruß
                      hagen

                      1. Moin Moin!

                        An IFrames hatte ich auch schon gedacht.
                        Der Shop passt aber von der Größe nicht in unseren Contentbereich, was diese Idee gleich wieder zu nichte gemacht hat.
                        Ansonsten müssten wir ein komplettes redesign unserer Webseite machen.

                        Das würde vielleicht auch nicht schaden.

                        Die Site (die ich jetzt mal nur nach der Startseite beurteile) funktioniert nur in großen Browserfenstern, in richtig großen (hehe!) Browserfenstern wird jede Menge Platz für ein schmuddelig aussehendes Passepartout verschenkt, in "normal" großen Browserfenstern ist vom Inhalt kaum etwas zu sehen.

                        Das Grinsegesicht aus dem letzten o und ö in "Schauen Sie also öfters mal rein!" ist ja ganz niedlich, aber leider ist das und der gesamte Text gar kein Text, sondern ein Bild, dessen alternativer Text "Herzlich Willkommen!" kaum Ähnlichkeit mit dem Text auf dem Bild hat. Suchmaschinen können Texte in Bildern nicht lesen. Du schneidest Dir ins eigene Fleisch.

                        Beim Firmenlogo oben rechts wird's noch schlimmer:

                        <div id ="header-logo"><a href="/web/../web/index.php" title="Zur Startseite"></a></div>

                        Nicht nur, dass das automatisch erzeugter Müll ist, damit könnte ich ja leben. Aber im Link steht NICHTS drin. Ein Suchmaschinen-Roboter sieht den Link, findet aber keinen Text. Schade, "gesehen, gelacht, F8". Da gehört Euer Name rein! Maschinenlesbar. Wenn Du den für das Auge dort nicht haben willst, laß ihn per CSS verschwinden. Und warum muß das Bild mit Gewalt ein Hintergrundbild sein? Das img-Element ist auch in XHTML noch erlaubt.

                        Die gruselige Tag-Suppe erinnert nur entfernt an HTML oder XHTML, und semantisch ist da auch nichts. Beachte mal die "Document Outline", die der Validator liefert, oder besser deren vollkommene Abwesenheit. Beim CSS sieht's leider auch nicht besser aus.

                        Insgesamt habe ich den Eindruck, dass die Seite noch lange nicht fertig ist. Ich finde nur jede Menge nichtssagende Platzhalter-Texte, die eigentlich immer auf ein "ruf uns an" hinauslaufen. Und mal ganz ehrlich: Weder Photovoltaik noch VoIP sind NEUE Techniken. Nicht mal mehr auf dem "platten Land". OK, Auerswald hat seit erst seit ungefähr einem oder zwei Jahren Anlagen und Telefone mit VoIP im Sortiment, aber VoIP gibt es schon wesentlich länger, auch als fertige Produkte.

                        Auch schön, im Impressum: "Wirtschafts-Identifikationsnummer gemäß § 139c Abgabenordnung: DE 0000000" -- wie seit ihr an diese supergeniale Nummer gekommen? ;-)

                        Oder die Seite Über uns. Überschrift: "Wenn Zuverlässigkeit oberstes Gebot ist ... bundesweit." (ok, keine Überschrift im Sinne von h1, h2, h3, h4, h5, h6, sondern ein span in einem strong in einem p in einem td in einem tr in einem tbody in einem table in ....) Darunter eine sehr merkwürdige Karte der Bundesrepublik, in der 15 der 16 Bundesländer fehlen, nur Baden-Württemberg ist zu sehen. Hab ich da in letzter Zeit etwas politisch verpaßt? Meine Kollegen aus BaWü drehen gelegentlich ja auch mal etwas am Rad, aber dass die mittlerweile Ausland sein sollen -- bzw. wir hier im Norden -- wäre mir neu.

                        Was aber auch wieder zu Problemen führt, weil die blöde Kopfzeile mit den Logos und der Navigation vom Shop wieder nicht zum restl. Design unserer Seite passt....
                        Wie dem auch sei, es bleibt nur der Link.

                        Was mich jetzt irrtiert ist der 404-Link von dem Du sprichst...
                        Welcher Link führt den ins Leere?

                        Ich gehe auf http://www.granzow.de/, werde - warum auch immer - auf [http://www.granzow.de/web/index.php] weitergeleitet. Dort finde ich oben einen Link namens "Onlineshop" (in einem <li class="item70">), der öffnet http://www.granzow.de/web/neue-seite.html in einem neuen Tab und das gibt 404.

                        Gleiches Spiel mit dem Link "Onlineshop" auf der linken Seite (in einem <li class="item69">).

                        Findest Du es übrigens sinnvoll, dass der Apache so laut herausbrüllt, was er alles kann?

                        "Apache/2.2.6 (Win32) DAV/2 mod_ssl/2.2.6 OpenSSL/0.9.8g mod_autoindex_color PHP/5.2.5"

                        Wollte ich Euch schaden, würde ich mal nach bekannten Macken im Apache 2.2.6 suchen, insbesondere im DAV-Modul, dann nach Macken in PHP 5.2.5, dann nach Problemen mit OpenSSL 0.98g. Und wenn ich da nicht weiter komme, weiß ich wenigstens, dass der Server mit einem Windoof läuft. Da findet sich immer eine Lücke.

                        ServerTokens Minimal und ServerSignature Off

                        Oh, und wo wir gerade bei SSL sind: Mein FF nörgelt ganz fürchterlich, wenn ich https://www.granzow.de/ öffnen will:

                        www.granzow.de uses an invalid security certificate.

                        The certificate is not trusted because it is self-signed.
                        The certificate is only valid for localhost
                        The certificate expired on 04.12.2006 16:11.

                        Lasse ich den Zugriff zu, fragt er mich als nächstes nach Name und Passwort für "xampp user". Laß mich raten, wie Du den Apachen auf die Windows-Kiste gebracht hast ...

                        Nach dem Standard-Login für XAMPP suche ich wohl besser mal nicht, oder? Die Aussagen auf http://www.apachefriends.org/en/xampp-windows.html#1221 reicht mir eigentlich schon:

                        As mentioned at another place, XAMPP is not meant for production use but only for developers in a development environment. XAMPP is configured is to be as open as possible and to allow the web developer anything he/she wants. For development environments this is great but in a production environment it could be fatal.

                        Here a list of missing security in XAMPP:

                        * The MySQL administrator (root) has no password.
                            * The MySQL daemon is accessible via network.
                            * phpMyAdmin is accessible via network.
                            * The XAMPP demopage is accessible via network.
                            * The default users of Mercury and FileZilla are known.

                        All points can be a huge security risk. Especially if XAMPP is accessible via network and people outside your LAN.

                        [...]

                        If you want have your XAMPP accessible from the internet, you should go to the following URI which can fix some problems:
                        http://localhost/security/

                        With the security console you can set a password for the MySQL user "root" and phpMyAdmin. You can also enable a authentication for the XAMPP demopage.

                        This web based tool does not fix any problem!

                        Ein schneller Portscan zeigt 7 offene Ports auf einer Windows-Maschine, wenigstens ist MySQL nicht sichtbar. SSH ist vorhanden, aber warum muß dann auch noch FTP laufen? Und ein DNS-Server? Und Terminal Services?

                        Ganz ehrlich: Ich beneide Dich im Moment nicht um Deinen Job. ;-)

                        Alexander

                        --
                        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
                        1. Hallo,

                          Aber im Link steht NICHTS drin. Ein Suchmaschinen-Roboter sieht den Link, findet aber keinen Text. Schade, "gesehen, gelacht, F8".

                          wofür soll F8 hier stehen? Ist das ein Insider? - Zumindest will mir keine allgemein bekannte Standard-Belegung (wie etwa F5 für Aktualisieren) einfallen.

                          Auch schön, im Impressum: "Wirtschafts-Identifikationsnummer gemäß § 139c Abgabenordnung: DE 0000000" -- wie seit ihr an diese supergeniale Nummer gekommen? ;-)

                          <sarcasm>Die gibt's für Null Problemo.</sarcasm>

                          So long,
                           Martin

                          --
                          Success should be measured not so much by the position that one has reached in life,
                          but by the obstacles one has overcome while trying to succeed.
                          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                          1. Also zumindest für den webserver kann ich nix....
                            Und in den Rest bin ich jetzt mal so reingeworfen worden und muss kucken, wie ichs hinbieg...
                            Momentan beneide ich mich selber net :(

                          2. Moin Moin!

                            Aber im Link steht NICHTS drin. Ein Suchmaschinen-Roboter sieht den Link, findet aber keinen Text. Schade, "gesehen, gelacht, F8".

                            wofür soll F8 hier stehen? Ist das ein Insider?

                            Eigentlich nicht.

                            Zumindest will mir keine allgemein bekannte Standard-Belegung (wie etwa F5 für Aktualisieren) einfallen.

                            F5 ist ja auch Kopieren!

                            Das stammt aus alten Zeiten, als man den PC noch mit einem "Big Red Switch" ein- und ausschaltete, von ca. 13,5 cm x 13,5 cm großen Pappscheiben startete und der "Desktop" sich auf ein "A:>", gefolgt von einem blinkenden Unterstrich, beschränkte.

                            Genauer gesagt stammt das vom Norton Commander: F8 = Datei oder Verzeichnis (ggf. rekursiv) löschen, je nach Einstellung auch ohne Rückfrage.

                            Die Belegung gibt's in den diversen Clones auch, bis hin zum Midnight Commander.

                            Auch schön, im Impressum: "Wirtschafts-Identifikationsnummer gemäß § 139c Abgabenordnung: DE 0000000" -- wie seit ihr an diese supergeniale Nummer gekommen? ;-)

                            <sarcasm>Die gibt's für Null Problemo.</sarcasm>

                            *gröhl!*

                            Alexander

                            --
                            Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
                            1. Hallo,

                              wofür soll F8 hier stehen? Ist das ein Insider?
                              F5 ist ja auch Kopieren!

                              ??

                              Das stammt aus alten Zeiten, als man den PC noch mit einem "Big Red Switch" ein- und ausschaltete, von ca. 13,5 cm x 13,5 cm großen Pappscheiben startete und der "Desktop" sich auf ein "A:>", gefolgt von einem blinkenden Unterstrich, beschränkte.

                              Ich kann mich noch gut an diese Zeiten erinnern. Allerdings stand bei mir üblicherweise schon "C:>_".

                              Genauer gesagt stammt das vom Norton Commander: F8 = Datei oder Verzeichnis (ggf. rekursiv) löschen, je nach Einstellung auch ohne Rückfrage.

                              Ah. Verstehe. NC und Verwandte habe ich selten verwendet.

                              Ciao,
                               Martin

                              --
                              Einer aktuellen Erhebung zufolge sind zehn von neun Ehefrauen eifersüchtig auf ihren Mann.
                              Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(