Da Kunden nicht zwingend schon bei Erstellung Ihres Kontos wissen welche Zahlungsart sie wählen werden, ist deine erste Idee die bessere und richtige.
Dies auch, weil man ja auch ein Konto erstellen kann und später erst irgendwann etwas bestellt.
Du könntest auf der
checkout_payment-Seite z.B. mit Ajax bei Wahl der betreffenden Zahlungsoption eine Meldung aufpoppen lassen mit einem Eingabefeld für das Geburtsdatum, dessen Eingabe du dann mit
$_Post['WERT'] in die DB schreibst.
Oder, wenn du auf Javascript verzichten möchtest, lässt du bei Wahl der betreffenden Zahlungsart in der
checkout_confirmation die Meldung "erscheinen" und lässt dort zusätzlich dann das Eingabefeld wiedergeben.
Dafür würde wahrscheinlich eine einfache if-Abfrage in
/checkout_confirmation.php ausreichen à la:
if ($_SESSION['payment'] == 'DIE_ZAHLUNGSART') {
$smarty->assign('MELDUNG', BLABLA);
$smarty->assign('MELDUNG', xtc_draw_input_field(WAS_HIER_EBEN_HINMUSS);
}
und natürlich die DB-input Routine für die Übergabe der $_POST-Daten an die DB.
Und dann fügst du die Smarty-Platzhalter ins Template ein.
Oder du machst die if-Abfrage gleich im Template.
Ersteres hat den Vorteil, daß du ja ohnehin die input-Routine für das Eingabefeld in die
/checkout_confirmation.php schreiben mußt, dann kannst du auch gleich da die if-Abfrage machen.
Das war jetzt nur so 'ne erste Idee.
Müsste man ausarbeiten.
Gruß,
noRiddle