Aporte de login + dudas generales que tengo

Iniciado por uluigi, 11 Julio 2015, 22:20 PM

0 Miembros y 1 Visitante están viendo este tema.

uluigi

Hola a todos, veréis, estoy empezando con PHP y he creado este login con session_start() y os lo dejo aquí:

<?php
session_start();
$passwd '1234';

if($_POST['passwd']) {
if($_POST['passwd'] == $passwd) { $_SESSION['passwd'] = 'session'; }
else { "<span>Contrase&ntilde;a incorrecta."; }
}
if(!$_SESSION['passwd']) {
?>

<h2>Inicio de sesi&oacute;n</h2><hr>
<form method="post" action="">
<input type="password" name="passwd">
<input type="submit" name="login" value="Iniciar sesión">
</form>
<?php
} else {
if($_GET['exit']) {
session_destroy();
exit("Desconectado correctamente.");
}
?>

<a href="?exit=true">Cerrar sesi&oacute;n</a>
<?php ?>

Me gustaría que opinaseis sobre qué os parece el código, si está bien estructurado, si necesita algo más o sobra algo. Porque hay gente que dice que mientras que funcione está bien, pero a mí eso no me cunde, tiene que funcionar y con el mínimo código posible pero con sus líneas necesarias de seguridad, ya me entendéis.
Mi cuestión para los avanzados en PHP es:
Cómo definir las Undefined index de otra forma que no sea:

if(empty($_POST['passwd'])) {
$_POST['passwd'] = '';
}

Saludos a todos.

engel lex

Código (php) [Seleccionar]
if($_POST['passwd'])

debería ser

Código (php) [Seleccionar]
if(isset($_POST['passwd']))
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.