Código PHP:
<?php
$mensaje_error = "";
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
$accion = isset($_POST['accion']) ? $_POST['accion'] : '';
$base_datos = 'usuariosdb.php';
$pagina_sucesos = './index.php';
if (!file_exists($base_datos))
{
echo 'La base de datos no funciona!';
exit;
}
if ($accion == 'registro')
{
$nuevonombre_usuario = $_POST['nombre_usuario'];
$nuevoemail = $_POST['email'];
$nuevacontrasena = $_POST['contrasena'];
$confirmarcontrasena = $_POST['confirmarcontrasena'];
$nuevonombre_completo = $_POST['nombre_completo'];
if ($nuevacontrasena != $confirmarcontrasena)
{
$mensaje_error = 'Tu contrasena y la confirmada no es la misma.';
}
else
if (!ereg("^[A-Za-z0-9_!@$]{1,50}$", $nuevonombre_usuario))
{
$mensaje_error = 'Tu nombre de usuario no es válido.';
}
else
if (!ereg("^[A-Za-z0-9_!@$]{1,50}$", $nuevacontrasena))
{
$mensaje_error = 'Tu contrasena no es válida.';
}
else
if (!ereg("^[A-Za-z0-9_!@$.' &]{1,50}$", $nuevonombre_completo))
{
$mensaje_error = 'Tu nombre completo no es válido.';
}
else
if (!ereg("^.+@.+\..+$", $nuevoemail))
{
$mensaje_error = 'Tu Email no es válido.';
}
[B] $elementos = file($base_datos);
foreach($elementos as $enlinea)
{
list($nombre_usuario, $contrasena, $email, $nombre_completo) = explode('|', trim($enlinea));
if ($nuevonombre_usuario == $nombre_usuario)
{
$mensaje_error = 'Tu nombre de usuario ya está en uso. Por favor, prueba con otro.';
break;
}
}
if (empty($mensaje_error))
{
$archivo = fopen($base_datos, 'a');
fwrite($archivo, $nuevonombre_usuario);
fwrite($archivo, '|');
fwrite($archivo, md5($nuevacontrasena));
fwrite($archivo, '|');
fwrite($archivo, $nuevoemail);
fwrite($archivo, '|');
fwrite($archivo, $nuevonombre_completo);
fwrite($archivo, '|1');
fwrite($archivo, "\r\n");
fclose($archivo);[/B]
$mailto = $nuevoemail;
$asunto = 'Tu nueva cuenta.';
$correo = 'Una nueva cuenta a sido creada';
$correo .= "\r\nnombre_usuario: ";
$correo .= $nuevonombre_usuario;
$correo .= "\r\ncontrasena: ";
$correo .= $nuevacontrasena;
$correo .= "\r\n";
$encabezado_correo = "De: [email protected]"."\r\n";
$encabezado_correo .= "X-Mailer: PHP v".phpversion();
mail($mailto, $asunto, $correo, $encabezado_correo);
header('Location: '.$pagina_sucesos);
exit;
}
}
}
?>
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" >
<link rel="stylesheet" type="text/css" href="estiloregistro.css"></link>
<link rel="stylesheet" type="text/css" href="estiloindex.css"></link>
<title>Tu libro de compases - Alumno</title>
</head>
<body>
<!-- CABEZA -->
<div id="cabecero">
<div id="menu">
<div id="tabla">
<ul>
<li><a href="#" >Opciones</a></li>
<li><a href="#" >Alumno</a></li>
<li><a href="#" >Estadísticas</a></li>
</ul>
</div>
</div>
<div id="menu2">
<div id="tabla2">
<ul>
<li><a href="#" id="especial">Iniciar sesión</a></li>
</ul>
</div>
</div>
</div>
<div id="contenido">
<div id="herramienta">
<div class="margen">
<div id="div_registro">
<form name="registro" method="post" action="<?php echo basename(__FILE__); ?>" id="registro">
<input type="hidden" name="accion" value="registro">
<table fontsize="12px" align="center">
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr>
<td align="center" colspan="2"><strong>Registrate para crear una nueva cuenta</td></strong>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr></tr>
<tr align="left">
<td align="left">Nombre completo: </td>
<td align="left"><input name="nombre_completo" type="text" id="nombre_completo"></td>
</tr>
<tr align="left">
<td align="right">Nombre de usuario (nick): </td>
<td align="left"><input name="nombre_usuario" type="text" id="nombre_usuario"></td>
</tr>
<tr>
<td align="left"">Contraseña: </td>
<td align="left"><input name="contrasena" type="password" id="contrasena"></td>
</tr>
<tr align="left">
<td align="left">Confirmar contraseña: </td>
<td align="left"><input name="confirmarcontrasena" type="password" id="confirmarcontrasena"></td>
</tr>
<tr align="left">
<td align="left">E-mail:</td>
<td align="left"><input name="email" type="text" id="email"></td>
</tr>
<tr align="left">
<td><?php echo $mensaje_error; ?></td>
</tr>
<td align="left" valign="bottom" colspan="1"><input type="submit" name="registro" value="Crear usuario" id="registro"></td>
</tr>
</td>
</table>
</form>
</div>
</div>
</div>
</div>
</div>
</body>
</html>