Cita:
Iniciado por Triby
andresdzphp, el short tag para echo sí está permitido y debe funcionar sin problemas, aunque la mayoría de programadores que respetan estándares sugieren no usarlo.
Lo sé, lo que dije fué que
no cerró PHP no es lo mismo <?=errores();> que <?=errores();?>
Cita:
Iniciado por Triby
jav1, tu problema no es de PHP, sino de CSS... revisa si tienes bien definida la clase .alert .alert-error, o tal vez esté sobrando el primer alert.
Lo que pasa es que está usando twitter boostrap y ese código es válido para la versión 2.3.2 como lo muestra el manual:
Código HTML:
Ver original<div class="alert alert-error"> Este es mi mensaje de error
http://getbootstrap.com/2.3.2/components.html#alerts
Me tomé el trabajo de probarlo con la versión 3.0.0 y ya no funcionan los alert como está en el manual.
Para la versión 3.0.0 en vez de alert alert-error es alert alert-danger
http://getbootstrap.com/components/#alerts-examples
Quedaría:
Código PHP:
Ver original<?php
function errores (){
if(isset($_POST['usuario'])) { if((empty($_POST['usuario']) && empty($_POST['password']))){ $out= '<div class="alert alert-danger">
<small><p>Debe ingresar un valor para Usuario</p>
<p>Debe ingresar un valor para Clave</p>
</small></div>';
return $out;
}
}
}
?>
Aquí un ejemplo completo de mi prueba:
Código PHP:
Ver original<!DOCTYPE html>
<html lang="es-ES">
<head>
<meta charset="utf-8" />
<link href="http://netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css" rel="stylesheet" type="text/css" />
<title>Test</title>
</head>
<body>
<?php
function errores (){
if(isset($_POST['usuario'])) { if((empty($_POST['usuario']) && empty($_POST['password']))){ $out= '<div class="alert alert-danger">
<small><p>Debe ingresar un valor para Usuario</p>
<p>Debe ingresar un valor para Clave</p>
</small></div>';
return $out;
}
}
}
?>
<form class="form-signin" name=login action="index.php" method="post">
<h2 class="form-signin-heading">Identificate</h2><?=errores();?>
<input name="usuario" type="text" class="form-control" placeholder="Usuario" autofocus>
<input name="password" type="password" class="form-control" placeholder="Password">
<label class="checkbox">
<input type="checkbox" value="remember-me"> Recuerdame
</label>
<button class="btn btn-lg btn-primary btn-block" type="submit">Logear</button>
</form>
</body>
</html>