Neuigkeiten
  • Die modified eCommerce Shopsoftware ist kostenlos, aber nicht umsonst.
    Spenden
  • Damit wir die modified eCommerce Shopsoftware auch zukünftig kostenlos anbieten können:
    Spenden
  • Thema: Geburtsdatum optional - kein Pflichtfeld

    je_web

    • Mitglied
    • Beiträge: 201
    • Geschlecht:
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #15 am: 14. August 2012, 19:47:45
    Ah, dass was ich auch anmerkte, dass (wahrscheinlich) das Datenformat nicht gleich bleibt.
    Ja, das ist unschön - aber das kann man ja mit einer
    Code: PHP  [Auswählen]
     if (empty($dob->...)
    bestimmt abfangen.

    Wenn leer, mach nix, wenn was drin steht -> wie bisher.
    So meinst du doch, oder?

    Harry Haller

    • Neu im Forum
    • Beiträge: 30
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #16 am: 28. August 2012, 20:49:01
    Hi je_web,

    mich würde das auch gerne mit dem Formats check beibehalten, kannst du deinen Vorschlag
    Code: PHP  [Auswählen]
     if (empty($dob->...)

    etwas genauer erklären, habe es nicht hinbekommen.

    Grüße,

    Harry

    sportstourer

    • Fördermitglied
    • Beiträge: 172
    • Geschlecht:
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #17 am: 09. Februar 2013, 17:50:57
    Hallo,

    ich bin ja auch der Meinung, das nur das nötigste vom Kunder abzufragen ist. Ich möchte zum Beispiel auch das Pflichtfeld "Geburtsdatum" sowie "Bundesland" nicht als Pflichtfeld haben!!! Beide sollen aber noch sichtbar bleiben, jedoch ohne "*" und ohne Pflichtzwang. Reicht es jedoch, in beide Felder im Admin die "0" zu setzen und die "*" zu suchen und entfernen? Ich habe hier schon viele Möglichkeiten gelesen, auch in anderen Treads, aber nicht das gefunden was ich benötige. Einen Schalter mit "Ein-Aus" für Pflichtfelder bei "Kunden-Details" wäre schon nicht verkehrt und nicht nur die "Aktivierung-Deaktivierung".

    Das wäre doch eigentlich die einfachste Lösung! Ich möchte das Feld Geburtsdatum nicht missen, sondern nur nicht als Pflichtfeld, gerade weil man per Mail auch gerne mal Glückwünsche verschicken kann.

    Mit freundlichem Gruß
    Micha

    Falko2013

    • Neu im Forum
    • Beiträge: 29
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #18 am: 12. April 2013, 10:30:55
    Ich hätte bei dieser Gelegenheit auch noch kurz eine Frage, ich habe bei der Registrierung das Feld "Geburtsdatum" entfernt, möchte aber bei den Kundendetails gerne das Feld Geburtsdatum beibehalten, ist das evtl. möglich? Da es sich hier um einen B2B-Shop handelt und man sich meistens persönlich kennt, wäre diese Lösung für mich sehr interessant.

    Falko2013

    • Neu im Forum
    • Beiträge: 29
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #19 am: 16. April 2013, 07:44:33
    Schade, gibt es hier wirklich keinen Lösungsansatz für mein Problem?

    gebeer

    • Mitglied
    • Beiträge: 121
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #20 am: 15. Juli 2013, 16:01:14
    Das funktioniert leider nicht, hatte ich schon probiert.


    Stimmt, da ist irgendwo noch das Format definiert. Sorry.
    In OSCommerce ging das glaub ich.

    Dann musst du wirklich die create_account.php und create_guest_account.php (!) diesen check ausbauen.

    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') {
                    if (checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false) {
                            $error = true;

                            $messageStack->add('create_account', ENTRY_DATE_OF_BIRTH_ERROR);
                    }
            }
     

    einfach auskommentieren.

    Aber Achtung! Das Datumsformat wird dann auch nicht mehr geprüft!
    Ganz wichtig!!! Die account_edit.php muss ebenfalls geändert werden, sonst sind Adressänderungen nur mit Eingabe des Geburtsdatums möglich.

    Grüße Jens

    Hallo, habe das in einem 1.06er Shop gerade in allen erwähnten Dateien auskommentiert, auch in der account_edit.php

    Jetzt kann ich einen Account ohne Geburtsdatum anlegen.

    Wenn ich jedoch über Mein Konto -> Kontodaten bearbeiten gehe, und ohne eingegebenes Geburtsdatum auf Weiter klicke, kommt die Meldung:
    Zitat
    Notwendige Angaben fehlen! Bitte richtig ausfüllen.

    * Ihr Geburtsdatum muss im Format TT.MM.JJJJ (zB. 21.05.1970) eingeben werden

    DAs sollte doch eigentlich durchs Auskommentieren erledigt sein.

    Verstehe nicht, warum die Meldung trotzdem kommt und bitte um Hilfe.

    Danke
    gerhard

    werdermania

    • Fördermitglied
    • Beiträge: 34
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #21 am: 07. Dezember 2013, 17:43:47
    Hallo,

    @gebeer: hast Du eine Lösung auf Dein Problem gefunden???

    Habe das selbe Problem in "Mein Konto"

    Gruß
    Caro

    gebeer

    • Mitglied
    • Beiträge: 121
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #22 am: 09. Dezember 2013, 09:20:55
    @werdermania

    nein, konnte ich noch nicht lösen und warte auch noch auf einen Tipp. Das optionale Geburtsdatum funktioniert bei der Neuanmeldung, nicht aber beim späteren Bearbeiten des Kontos.

    Gruß
    gerhard

    lizpix1989

    • Neu im Forum
    • Beiträge: 25
    • Geschlecht:
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #23 am: 05. Juni 2014, 13:46:26
    hallo, ich habe das selbe problem.
    Leider fehlt bei mir dann auch die Angabe - > Woher kennen Sie uns?
    Wenn ich da Geburtsdatum raus nehme oder auf optional stelle - Zeit mir das andere Feld (KEINE ANGABE) an!
    Wo hängt das denn Zusammen? Das Modul ist doch seperat eingebaut?! :-?

    Ich muss dazu sagen, das ich erst seit 1 monat in der Firma bin und das alles schon gemacht war  - nur jetzt gibt es leider das problem mit dem Shop wenn ich einen schalte umlege sind mehrere umgelegt...

    Vielleicht kann mir da jemand zu helfen.

    MoSaG

    • Frisch an Board
    • Beiträge: 82
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #24 am: 06. Februar 2015, 11:12:04
    Ja ich weiß, das ist schon älter, aber es wird ja anscheinend immer wieder gebraucht ;)

    Da ich es für eine Kundin jetzt auch brauchte, habe ich mir das alles mal genauer angesehen und hier ist die Anleitung für die v1.06 rev 4642 SP2.

    Das Datumsfeld darf leer bleiben (und kann wenn gewünscht per CSS versteckt werden), wird jedoch etwas eingetragen, wird das Format geprüft. Alle "erforderlich" Hinweise wurden entfernt.

    Änderungen müssen vorgenommen werden an folgenden Dateien:
    create_account.php
    create_guest_account.php
    account_edit.php
    admin/create_account.php
    admin/customers.php
    includes/form_check.js.php
    lang/german/german.php (und den jeweils anderen Sprachen)
    BACKUP nicht vergessen!

    Für jemanden der nicht weiß, was "auskommentieren" bedeutet, hier ein Beispiel:

    Code: PHP  [Auswählen]
    if ( a==b ) { print a; }

    wird zu

    Code: PHP  [Auswählen]
    /* if ( a==b ) { print a; } */

    vor und nach dem if-Block werden Kommentarzeichen hinzugefügt: /* auskommentiert */

    öffne create_account.php
    suche nach:

    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true' && (is_numeric(xtc_date_raw($dob)) == false ||

    ich habe diesen if-Block komplett auskommentiert und darunter eingefügt:

    Code: PHP  [Auswählen]
      if (ACCOUNT_DOB == 'true' && !empty($dob)) {
            if ( is_numeric(xtc_date_raw($dob)) == false || (@checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false)) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_DATE_OF_BIRTH_ERROR);
            }
      }

    öffne create_guest_account.php
    führe die Anweisung wie unter create_account.php aus

    öffne account_edit.php
    führe die Anweisung wie unter create_account.php aus

    öffne admin/create_account.php
    suche nach:

    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') {

    auch hier habe ich den if-Block komplett auskommentiert und darunter eingefügt:

    Code: PHP  [Auswählen]
        if (ACCOUNT_DOB == 'true' && !empty($dob)) {
          if (checkdate(substr(xtc_date_raw($customers_dob), 4, 2), substr(xtc_date_raw($customers_dob), 6, 2), substr(xtc_date_raw($customers_dob), 0, 4))) {
            $entry_date_of_birth_error = false;
          } else {
            $error = true;
            $entry_date_of_birth_error = true;
          }
        }

    öffne admin/customers.php
    führe die Anweisung wie unter admin/create_account.php aus

    suche in admin/customers.php weiter nach:

    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') { ?>

    kommentiere den kompletten if-Block aus, hier wird nicht gegen etwas Neues ersetzt

    suche weiter nach:

    Code: PHP  [Auswählen]
    echo xtc_draw_input_field('customers_dob', xtc_date_short($cInfo->customers_dob), 'maxlength="10"', true);

    ersetze am Ende der Zeile true gegen false

    öffne includes/form_check.js.php
    suche nach:

    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') echo '  check_input("dob", ' . ENTRY_DOB_MIN_LENGTH . ', "' . xtc_js_lang(ENTRY_DATE_OF_BIRTH_ERROR) . '");' . "\n";

    kommentiere diese if-Anweisung komplett aus, hier wird nicht gegen etwas Neues ersetzt

    öffne lang/german/german.php (bzw. jede weitere Sprache)
    suche nach:

    Code: PHP  [Auswählen]
    define('ENTRY_DATE_OF_BIRTH_TEXT', '*(zB. 21.05.1970)');

    und entferne das Sternchen *

    So ich hoffe ich habe nichts übersehen, falls doch, oder es Probleme, bzw. Verbesserungen gibt, bitte einfach posten.

    Subject-Media

    • Neu im Forum
    • Beiträge: 6
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #25 am: 17. Mai 2015, 15:10:24
    Also zur Info... Ich hab es in eine etwas ältere Version eingebaut (modified eCommerce Shopsoftware v1.05 dated: 2010-07-18 SP1b), funktioniert wunderbar! Danke

    Viol

    • Fördermitglied
    • Beiträge: 2.279
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #26 am: 10. September 2015, 15:07:58
    Hallo,
    ich habe das bei mir (neueste 1.06er) eingebaut, es funktioniert aber die Kontobearbeitung für den Kunden nicht.
    Will der Kunde seine Daten ändern und gibt dort sein Geburtsdatum nicht im erforderlichen Format ein gibt es keine Fehlermeldung, die Seite wird nur neu geladen.
    Es liegt vermutlich an dieser Änderung in der account_edit.php
    Auskommentieren von
    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true' && (is_numeric(xtc_date_raw($dob)) == false ||
    und ersetzen mit:
    Code: PHP  [Auswählen]
      if (ACCOUNT_DOB == 'true' && !empty($dob)) {
            if ( is_numeric(xtc_date_raw($dob)) == false || (@checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false)) {
                    $error = true;
                    $messageStack->add('create_account', ENTRY_DATE_OF_BIRTH_ERROR);
            }
      }
    Laut Anleitung sollen die Änderungen in der create_account.php, create_guest_account.php und der account_edit.php identisch sein.
    Nur ist der ursprüngliche Code nicht identisch:
    in der acount_edit.php heißt der zu ersetzende Block:
    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') {
                    if (checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false) {
                            $error = true;
                            $messageStack->add('account_edit', ENTRY_DATE_OF_BIRTH_ERROR);
                    }

    in der create_account.php aber
    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true' && ( is_numeric(xtc_date_raw($dob)) == false ||
          (@checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false))) {
        $error = true;
        $messageStack->add('create_account', ENTRY_DATE_OF_BIRTH_ERROR);
      }

    Könnte es daran liegen und kann da jemand weiterhelfen?

    Viol

    • Fördermitglied
    • Beiträge: 2.279
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #27 am: 11. September 2015, 09:33:51
    Hallo,
    die Lösung des Problems:
    die Änderung in der account_edit muss lauten:
    Auskommentieren dieses if Blocks:
    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true') {
                    if (checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false) {
                            $error = true;
                            $messageStack->add('account_edit', ENTRY_DATE_OF_BIRTH_ERROR);
                    }
            }
    durch */ vor dem ersten if und /* nach der letzten geschweiften Klammer

    dann stattdessen einfügen:
    Code: PHP  [Auswählen]
    if (ACCOUNT_DOB == 'true' && !empty($dob)) {
            if ( is_numeric(xtc_date_raw($dob)) == false || (@checkdate(substr(xtc_date_raw($dob), 4, 2), substr(xtc_date_raw($dob), 6, 2), substr(xtc_date_raw($dob), 0, 4)) == false)) {
                    $error = true;
                    $messageStack->add('account_edit', ENTRY_DATE_OF_BIRTH_ERROR);
            }
      }

    hosa8113

    • Neu im Forum
    • Beiträge: 1
    Re: Geburtsdatum optional - kein Pflichtfeld
    Antwort #28 am: 04. Juni 2022, 00:01:11
    Falls es jemanden noch interessiert :-)

    Um das Geburtsdatum optional zu halten und trotzdem anzuzeigen, müssen an folgenden Dateien Anpassungen gemacht werden:

    - admin/includes/modules/customers_edit.php
    - admin/create_account.php
    - admin/customers.php
    - includes/form_check.js.php
    - account_edit.php
    - create_account.php
    - create_guest_account.php

    - lang/german/german.php (* entfernen)
    dies ist für jede Sprache ebenfalls noch anzupassen.
    Managed Server
    6 Antworten
    3787 Aufrufe
    05. Juni 2014, 13:48:29 von lizpix1989
    4 Antworten
    4218 Aufrufe
    14. September 2013, 10:24:21 von Simon
    14 Antworten
    7489 Aufrufe
    13. März 2015, 19:48:12 von D.L.
    5 Antworten
    3551 Aufrufe
    28. August 2010, 15:31:07 von speedy