Hallo, legt ein Kunde sein Konto neu an, wird bislang unter anderem das Feld "Strasse" angezeigt. Immer wieder kommt es vor, dass dann der Neukunde keine Hausnummer mit einträgt. Kann das irgendwo geändert werden, dass da entweder steht "Strasse, Nr." oder ein zusätzliches Feld "Hausnummer" erscheint. admin/customers.php?page=1&cID=70113&action=edit Danke Thomas Gehrke
Nein, das kannst du nicht - die Trennung Straße und Hausnummer soll aber in einem kommenden Update vollzogen werden siehe (Link nur für registrierte Nutzer sichtbar.)
Man kann das ganz einfach abfangen. Einfach prüfen ob eine Zahl im Feld Strasse vorkommt. Funktioniert bei mir wunderbar. Siehe hier: http://www.gambio-forum.de/threads/13279-Straße-Hausnummer-getrennt?p=110457&viewfull=1#post110457
Danke - so weit so gut - aber für mich zu weit im Programmieren. Aus den anderen Beiträgen sehe ich, dass Gambio dieses Problem schon lange kennt, aber offensichtlich nicht behebt. Würde dann allen Nutzern helfen. Thomas Gehrke
Bei einer Fehlerquote von knapp 25%, die ich aus eigenen Erfahrungen für sehr realistisch halte, ist das ein nicht zu unterschätzender Arbeitsaufwand der da täglich anfällt. Dabei kann man das sehr einfach verhindern. Genauso wie das Vertauschen von PLZ und Wohnort...
Wenn Du 25% hast, dann würde es speziell in Deinem Fall Sinn machen, entgegen zu wirken. Da gebe ich Dir Recht! Bei meiner täglichen Arbeit mit meinen Kunden, hat noch nie jemand danach gekräht. Und es gibt Kunden von mir, da ballert es an Bestellungen. Das man das generell mal trennen sollte, ist ein anderes Thema. Aber im Moment haben die Jungs von Gambio, wie gesagt, sicherlich andere Probleme zu bewältigen.
"Im Moment" dauert nun schon Jahre und es gibt grundsätzlich immer was Wichtigeres... Leider haben Programmierer immer andere Prioritäten als Anwender und wenn Klagen von Anwendern beim Programmierer ankommen ist ein Problem meist kein Kleines mehr. Wie gesagt, es gibt eine einfache Lösung die man auch ohne Trennung von Strasse und Hausnummer ganz einfach einbauen könnte, die funktioniert und so winzig ist, daß sie in 3 Minuten drinn ist. Kleiner Hinweis für Wilken: Ich motze im März schon drei Jahre rum... legst Du Dir das auf Termin?
Ob es nun direkt etwas wichtigeres gibt. Ich finde es mitunter am wichtigsten. Meine Kunden erhalten Ihre Ware nicht pünktlich zu Weihnachten, da Sie keine Hausnummer angegeben haben. Gut jeder würde sagen, selbst schuld. Nur wir dürfen dann die Summe zurück zahlen, da der Kunde dann storniert. Prinzipiell bei T-Shirts die wir verkaufen, auch nur halb so schlimm, aber Wandaufkleber werden extra produziert und kommen dann in den Müll. Es wäre halt schön, wenn zumindest etwas Updatesicheres kommen würde. Kann auch schlichtweg eine Überbrückung der Hauptlösung sein. Ich werde das mal ausprobieren mit der Lösung von Dir "cmtopchem", vielleicht überbrückt es zumindest. Vielen Dank.
Updatesicher geht auch... Prüft auf Hausnummer und ob im PLZ-Feld ein rein numerischer Wert steht. Löst 99% der Fehleingaben. Getestet bis v.2.2.0.0. Leg Dir mal eine user_classes/overloads/CreateAccountContentControl/PLZ_Check_CreateAccountContentControl.inc.php an mit folgendem Inhalt: PHP: Class PLZ_Check_CreateAccountContentControl extends PLZ_Check_CreateAccountContentControl_parent{ function validate_customer_data() { parent::validate_customer_data(); // #### BOM Auf Hausnummer prüfen ### if (reset(array_filter(str_split($this->customer_data_array['street_address']), 'ctype_digit')) == '') { $this->error = true; $this->error_array['error_street'] = sprintf(ENTRY_HOUSE_NUMBER_ERROR); } // #### EOM ##### // BOM PLZ-Check Postleitzahl auf Gültigkeit prüfen (numerisch oder nicht?) // 14 = Österreich // 21 = Belgien // 73 = Frankreich // 81 = Deutschland // 122 = Liechtenstein // 124 = Luxemburg // 204 = Schweiz if ($this->customer_data_array['country'] == 81 or $this->customer_data_array['country'] == 73 or $this->customer_data_array['country'] == 14 or $this->customer_data_array['country'] == 124 or $this->customer_data_array['country'] == 21 or $this->customer_data_array['country'] == 204 or $this->customer_data_array['country'] == 122 ) { if (is_numeric($this->customer_data_array['postcode']) == false) { $this->error = true; $this->error_array['error_post_code'] = sprintf(ENTRY_POST_CODE_ERROR2); } } // EOM PLZ-Check }} Dazu nur noch die Fehlermeldung in den Sprachdateien anlegen. Fertig.
Ich hab da was anderes interessantes gefunden. Das wäre wieder was für Avenger, Steffen und Co... Ich bin da zufällig drauf gestossen, weil die Unitymedia-Verfügbarkeitsprüfung eine Adress-Autovervollständigung von Google nutzt. Adress-Autovervollständigung über Google-Maps-API. https://kau-boys.de/364/webentwickl...ress-autovervollstaendigung-mit-scriptaculous Da liesse sich doch sicherlich was tolles zaubern!
Hallo zusammen, ich habe ebenfalls das Problem das immer häufiger Kunden angeschrieben werden müssen weil die Hausnummer fehlt. Trennung Straße und Hausnummer brauche ich nicht, nur prüfen ob eine Zahl eingegeben wurde wäre schon hilfreich. Habe nun 1 Stunde das Forum und Internet durchsucht, die Lösung von cmtopchem klappt bei mir (V2.6.0.0) leider nicht :-( Gibt es dazu was neues ? Hat jemand eine Idee wie ich das als nicht Shop-Experte irgendwie einbinden kann ?
vielleicht sollten wir zusammenschmeissen und uns meine oben präsentierte Lösung von jemandem updatesicher für 2.7. anpassen lassen.
Hallo Christian, 1. was würdet Ihr machen, wenn ein Kunde bei euch etwas bestellt aus einem Land der Buchstaben in der PLZ hat? 2. Feld für PLZ als ein Pflichtfeld im Frontend ablegen und mit JavaScript vor dem versenden der Daten an den Server auf Inhalt prüfen. 3. Mit JavaScript und PHP (ja, es gibt auch Menschen die JavaScript deaktiviert haben) auf valides PLZ hin prüfen. Deinen Ansatz von oben mit PHP: if(... or ... or ... or ... or ... or ...){ usw...} würde ich komplett überdenken und lieber mit RegEx arbeiten (sowohl in JavaScript als auch in PHP).
Der Ansatz da oben funktionierte bei mir wunderbar über zwei Jahre und berücksichtigt explizit nur die Länder die rein numerische PLZ haben. Niederlande und UK kann man damit nicht prüfen, das ist klar. In fast allen Fällen ist die Autocomplete-Funktion der Browser Schuld an falsch ausgefüllten Adressfeldern. Die erkennt man damit wunderbar. und man muss nicht gleich mit Kanonen auf Spatzen schiessen. Ich hatte noch eine andere Lösung, die auch mit Regex arbeitete und alle Länder der Welt auf die richtige PLZ geprüft hat. Die Regex habe ich dafür in der Ländertabelle hinterlegt. Leider war das nicht updatesicher und deshalb habe ich mit meinen geringen Kenntnissen obige Lösung geschaffen die vielleicht nicht die hohe Schule der Programmierkunst ist, aber fehlerfrei funktionierte für die wichtigsten Länder in die ich verkaufe. Für den Ansatz das mit Regex zu prüfen findest Du hier die Ländertabelle mit Regex für alle Länder. Wenn du das hinkriegst und auf die aktuelle Version anpassen kannst, dann nur zu. Wie Du siehst haben doch mehrere Leute Interesse daran.
Nun ja, ehrlich gesagt wusste ich bis Heute nicht, dass Gambio es sich um das Thema Formular schwer tut und nicht voran kommt. Da aber unser Shop demnächst online gehen soll, ist es gut zu wissen, welche Probleme da auf einen zukommen werden. Natürlich stehe ich als Mitarbeiter in einem Unternehmen der als Entwickler eingestellt ist in der Pflicht dafür zu sorgen, dass gewisse "Standard"-Prozesse sauber ablaufen. Vor allem wenn man sogar für Gambio positiv gesprochen und die Lösung vorgeschlagen hat (ohne sich vorab richtig zu informieren, was das System wirklich kann - ein Fehler von mir!). Doch gewisse Systemlogiken die von mir implementiert werden, übergehen in Eigentum meines Arbeitgebers. Von daher müsste ich erst ein mal mit meinem Vorgesetzten reden und ihn um die Erlaubnis fragen bzgl. Veröffentlichung des Quellcodes. Ich kann dir vorab aber eines sagen - solch eine Umsetzung ist nicht schwer und benötigt vielleicht wenige Tage.