2010-01-10 7 views
6

Me preguntaba si hay una manera más corta de escribir el siguiente código PHP:establecimiento de valores de entrada con isset

<input type="text" name="username" value="<?if(isset($_POST['username'])){ echo $_POST['username']; }?>" /> 

me gusta tener que hacer esto va a todos mis formas como el isset() realmente comprobar meta la pata mi HTML y asusta a los frontenders.

Respuesta

5

puede hacer que un ayudante:

function req($key, $default = '') 
{ 
    return isset($_REQUEST[$key]) ? $_REQUEST[$key] : $default; 
} 

<input name="user" value="<?php echo htmlentities(req('user')) ?>" /> 

@marvin's sugerencia es agradable para la secuencia de comandos, así

con respecto a la gente de front-end, yo les diría darles un poco de php básico para usar, como en este tutorial php para diseñadores: http://www.digital-web.com/articles/php_for_designers/

el aprendizaje de los scripts básicos que creo que es mejor que el uso de un sistema de plantillas externa

+0

También podría poner las actividades en la función de solicitud, quizás como una opción, para simplificar aún más las cosas. – JAL

3

Puede asignar los valores en php parte y luego simplemente eco en html

$username = isset($_POST['username'])?$_POST['username']:''; 

<input type="text" name="username" value="<?php echo $username;?>" /> 
1

¿Por qué no

<input type="text" name="username" value="<? echo $_POST['username']; ?>" /> 

si $ _POST [ 'nombre de usuario'] está vacía entonces causará un valor de " " de todas formas.

Siento que me falta algo.

+0

Se lanza una advertencia (la clave no existe). – dotty

Cuestiones relacionadas