dedlfix: Gleiches Formular: New & Edit

Beitrag lesen

Tach!

also so?

<input type="text" name="nickname" id="nickname" <?php if(isset($_GET['mID'])) {?> value="<?php echo $user_nickname;?>" <?php }?> <?php if(!isset($_GET['mID'])) {?> value="<?=(isset($_POST['nickname'])) ? $_POST['nickname'] :''?>" <?php }?>>

Nein. $_GET und $_POST sind Bestandteil der Eingabedaten. Die haben nichts in der Ausgabe zu suchen. Ich meine: Es gibt ein generelles Objekt/Array, in dem alle Ausgabewerte gesammelt werden.

$output = [];

Wenn der New-Fall eintritt, dann erstellst du die Eigenschaften dafür.

$output['type'] = 'new';
$output['name'] = '';
...

Und im Edit-Fall

$output['type'] = 'edit';
$output['name'] = $aus_der_Datenabfrage;
...

Und nun gehts zur Ausgabe. Alle auszugebenden Werte stehen in $output. Wenn Dinge unterschiedlich gerendert werden sollen, dann kannst du den Wert in type befragen, ansonsten gibst du die Werte direkt aus (inklusive kontextgerechter Behandlung).

<input type="text" name="nickname" value="<?=htmlspechialchars($output['name'])?>">

dedlfix.