Jump to content
xt:Commerce Community Forum

IE8 und optionale Felder


Parlan

Recommended Posts

Hallo zusammen.

Ich habe folgendes Problem:

Wir setzen für unseren Onlineshop xt:commerce ein. Die Versionsnummer ist mir unbekannt, muss Stand Ende 2006 sein. (1)

Eine Bestellung als Gast ist möglich, bei der Angabe der Adressdaten während des Bestellprozesses (create_guest_account.php) ist das Feld eMail-Adresse _kein_ Pflichtfeld. (2) In der Konfiguration wurde als Mindestlänge dieses Feldes 0 eingegeben.

Mit Firefox, Opera und IE bis 7 funktioniert alles ok, doch der IE8 meckert nach Absendung des Formulars per PopUp, dass notwendige Angaben fehlen resp. die Emailadresse aus mindestens 0 Zeichen bestehen muss.

Gibt man dann ein Zeichen ins Feld ein, kann es weiter gehen, doch ist es in Anbetracht der zunehmenden Userzahl des IE8 keine gute Lösung und verwirrt zudem die betroffenen User.

Hat jemand eine Idee, wo man ansetzen muss, um auch dem IE8 klarzumachen, dass es sich um kein Pflichtfeld handelt?

Vielen Dank für Eure Mühe und Vorschläge im voraus.

Gruss,

Parlan

(1) Aufgrund zahlreicher undokumentierter Anpassungen möchte ich ein Update nur dann durchführen, wenn es gar keinen anderen Weg zur Problemlösung gibt.

(2) Ein beträchtlicher Teil der Zielgruppe hat gar keinen Emailaccount. Eine Bestellung ist trotzdem möglich, es wird aber keine Auftragsbestätigung versendet, worauf im Vorhinein hingewiesen wird.

Link to comment
Share on other sites

JavaScript Popup?

Wenn's eine etwas ältere Shopversion ist, könnte das an der shopeigenen JavaScript-Formularüberprüfung liegen, die in älteren Versionen so gebaut ist, dass sie auf neueren (oder besser gesagt: besseren :D ) Browsern nicht richtig funktioniert! Den IE8 zähl ich in diesem Punkt mal nicht unbedingt zu den besseren...

Kommt denn auf den anderen Browsern auch ein PopUp, wenn Du einfach mal gar nichts (nirgends) eingibst?

Oder noch besser: Gib mal ein Link zum Shop!

Link to comment
Share on other sites

...ja, bei den anderen Browsern kommt kein PopUp, weil die den ollen JavaScript-Formularcheck nicht (mehr) verstehen. Der ist halt ein wenig "old-school", und die ollen Sachen kann nur der neue IE :) Frag nicht... ;)

Drei Ansätze fallen mir dazu ein:

1) Wenn Du auf jedweden JavaScript-Check (wird ja hinterher eh in PHP nochmal gecheckt) komplett verzichten kannst, nimm die Datei

includes/header.php

und kommentiere alle (oder die, bei denen Du meinst, dass Du sie nicht brauchst) Vorkommen aus von

require('includes/form_check.js.php');[/PHP]

[b]ODER 2) [/b]Du aktualisierst die Datei form_check.js.php wie folgt:

So ca. in Zeile 103 findest Du die Funktion check_form(form_name) und darin

[code]error = false; form = form_name; error_message = "<?php echo JS_ERROR; ?>";[/code]
Das änderst Du zu
[code]error = false; /* form = form_name; - IaN says: does not work any longer in Firefox, so... */ if(document.getElementById(form_name)){ form = document.getElementById(form_name); }else{ form = form_name; } error_message = "<?php echo JS_ERROR; ?>";[/code]

...dann sollte der Check wieder überall funktionieren!

Wenn Du das aber gar nicht willst und nur den IE ruhigstellen willst, gilt [b]3)[/b]:

In der gleichen Funktion findest Du auch folgendes:

[PHP] check_input("email_address", <?php echo ENTRY_EMAIL_ADDRESS_MIN_LENGTH; ?>, "<?php echo ENTRY_EMAIL_ADDRESS_ERROR; ?>");[/PHP]

Das könntest Du einfach auskommentieren und der Spuk im IE ist vorbei! :D

Cheers,

IaN

Link to comment
Share on other sites

Guten Morgen John

Juhuiii! Ich habe Variante 2 und 3 ausprobiert, letztere führte zum Erfolg! :)

Vielen Dank für die blitzschnelle Hilfe! :D

Noch eine Frage, auch wenn Sie bzgl. dieses Threads offtopic ist: weisst Du, wie man den installierten Versionsstand herausfinden kann. Würde mich doch interessieren, wie alt die Version ist...

Einen schönen Tag,

Parlan

Link to comment
Share on other sites

Jo Moin!

Bin auch schon wieder wach :)

Für den Versionsstand guckstu einfach in den Quelltext irgendeiner Seite im Shop-Frontend. Da steht dann oben im Head bei Dir

<meta name="generator" content="(c) by xt:Commerce v3.0.4 SP2.1 , http://www.xt-commerce.com" />[/HTML]

PS: Hast da nen Quelltextfehler in den Keywords (nicht maskierte Anführungszeichen). Macht aber nix, ist ja eh ein iFrame ;)

Cheers,

IaN

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
  • Create New...