:smile:
Hallo, mir ist aufgefallen, dass einige meiner User bereits mehr als 2000 Jahre alt sind. Auch hier bei pragmamx gibt es einige Methusalems. Das entsteht, wenn der betreffende User sein Geburtsdatum zwei/dreistellig anstatt vierstellig angibt.
Kann man User irgendwie dazu "zwingen", das Geburtsdatum vierstellig einzugeben?
Danke fürs Lesen und Antworten
Das Problem habe ich auch, aber wie willst du das unterbinden?
Wenn 4 Stellen Pflicht werden, dann gibt man 0000 ein und schon wieder gibt es diese Uralt User. ;)
Für 2 Jahre könnte man noch die "19" selber davor schreiben ;)
Igendeine If-Schleife, wenn zweistellig, dann eine 19 davor...
Bloß in 2 Jahren sind die 14-jährigen auch schon in diesem Jahrtausend gebohren.
Ähm, oder man fragt dann noch ab, ob die eingetragene Zahl kleiner 10 ist (1900-1910 | 2000-2010), und trägt beim ja eine "20" und bei nein eine "19" ein....
Macht aber alles nur Sinn, wenn der User aus Vergesslichkeit nur 2 Ziffern eingetragen hat. In den sozielen Netzwerken bin ich bewusst 1900 gebohren ^^
Möchte der User sein wahres Alter nicht preis geben, hätte er ja ie Möglichkeit, das Feld ganz leer zu lassen. Möglicherweise bin ich auch nur zu pingelig; ich hab es eben gern korrekt. Trotzdem möchte ich nicht jeden User, der ein falsches Datum (aus bewusster oder unbewusster Nachläsigkeit) angegeben hat , fragen, aus welchem Jahrtausend er stammt.
Ich kann aber damit leben, so alte User zu haben, wenn es keine Möglichkeit gibt, das zu ändern oder zu unterbinden. Allerdings ist das nicht so einfach.
Hoi trulla, :)
und wenn du dort wo die Jahreszahl hinkommt ein Auswahlfeld einbaust von z.B. 1950 bis 2010? Dann wäre das doch gelöst oder? :gruebel:
Hoi trulla, :)
habe das mal gerade probiert. Passe in der Datei includes/mx_userfunctions.php folgendes an:
suche Zeile 586/587:
$m[] = '<option value="' . $i . '" ' . $sel . '>' . $i . '</option>';
}
und füge dahinter folgendes ein:
$sel = (empty($date['year'])) ? ' selected="selected" class="current"' : '';
$y[] = '<option value="0" ' . $sel . '>-</option>';
for ($i = 1930; $i <= 2011; $i++) {
$sel = ($i == (int)$date['year']) ? ' selected="selected" class="current"' : '';
$y[] = '<option value="' . $i . '" ' . $sel . '>' . $i . '</option>';
}
nun suche Zeile 590:
$out .= ' ' . _YA_BMONTH . ': <select name="bday_month">' . (implode("\n", $m)) . '</select>';
und füge dahinter:
$out .= ' ' . _YA_BYEAR . ': <select name="bday_year">' . (implode("\n", $y)) . '</select>';
nun kommentiere noch die Zeile darunter
$out .= ' ' . _YA_BYEAR . ': <input type="text" name="bday_year" value="' . ((empty($date['year'])) ? '' : $date['year']) . '" size="5" maxlength="4" />';
aus.
Dann hast du die Vorgabe mit Jahreszahl. Du kannst dann die 2011 noch anpassen je nachdem, ab welchem Alter man sich bei dir anmelden darf.
:smile:
Danke schön, das funktioniert :thumbup:
Hoi :)
ich habe das mal im Bugtracker eingetragen....