Problem mit dynamischen Values

mad2092

Grünschnabel
Hallo zusammen,

ich bastle gerade an einem Gästebuch. Hier möchte ich dass die Felder (Name, eMail, etc.) - wenn der Benutzer eingeloggt ist automatisch mit den Werten aus der DB gefüllt werden. --> Das ist soweit auch kein Problem.

Für die Vorschau schreibe ich die Werte - damit diese nicht verloren gehen - mit
PHP:
<?php echo $HTTP_POST_VARS[name]; ?>
ebenfalls wieder in die Einagbefelder zurück.

Das funktioniert reibungslos bei Benutzern, die nicht in der Datenbank vorhanden sind, bei Benutzern die jedoch bereits angemeldet sind, werden mir durch die doppelte Befüllung der Felder beide Werte nacheinander ausgegeben.

Ich dachte mir, ich könnte dies vielleicht mit einer if else Anweisung lösen, jedoch scheiterts hier an meinen bescheidenen Kenntnissen.

Das war mein Versuch, der leider jedoch immer einen Fehler bringt...

PHP:
<?php if (( $row_user['name']) == ( $HTTP_POST_VARS['gbook_autor'])) {echo $row_user['name'];} elseif (echo $HTTP_POST_VARS['gbook_autor'];) ?>

Da meine php Kenntnisse noch sehr jungfräulich sind, weiß ich zum einen nicht ob ich mein Problem überhaupt so lösen kann und natürlich auch nicht wirklich wo der Fehler in meiner Anweisung steckt...

Von daher sag ich herzlichen Dank im Voraus.
 
PHP:
<?php 
if($row_user['name'] == $_POST['gbook_autor']) 
{
  echo $row_user['name'];
} 
else
{
  echo $_POST['gbook_autor']; 
}
?>

else ist eben else, sprich wenn if nicht zutrifft.
elseif erwartet eine neue Bedingung, dies brauchst du hier aber nicht.

Weiterhin kannst du statt $HTTP_POST_VARS auch $_POST verwenden.
 
super, ganz lieben Dank für die super schnelle Antwort. Das funktioniert natürlich. :)

Nur mit else hatte ich es auch schon versucht, das ging aber auch nicht.

Soweit ich es sehe lag mein Fehler an den Klammern bei der else Ausgabe? Ich hatte () verwendet und nicht {}?

Viele Grüße
Claus
 
Ja, daran könnte es durchaus gelegen haben.

Falls es funktioniert, bitte noch auf "Erledigt" klicken.
 
Zurück