Código PHP:
<?php
$mensaje_error = "";
if ($_SERVER['REQUEST_METHOD'] == 'POST')
{
$accion = isset($_POST['accion']) ? $_POST['accion'] : '';
$base_datos = 'usuariosdb.php';
$pagina_sucesos = './login.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'];
$gusto = $_POST['gusto'];
$puntuacion = $_POST['puntuacion'];
$curso = $_POST['tiempo_dedicado'];
$tiempo_dedicado = $_POST['curso'];
if ($nuevacontrasena != $confirmarcontrasena)
{
$mensaje_error = 'Tu contrasena y la confirmada no es la misma.';
}
else
if (!preg_match("^[A-Za-z0-9_!@$]{1,50}$", $nuevonombre_usuario))
{
$mensaje_error = 'Tu nombre de usuario no es válido.';
}
else
if (!preg_match("^[A-Za-z0-9_!@$]{1,50}$", $nuevacontrasena))
{
$mensaje_error = 'Tu contrasena no es válida.';
}
else
if (!preg_match("^[A-Za-z0-9_!@$.' &]{1,50}$", $nuevonombre_completo))
{
$mensaje_error = 'Tu nombre completo no es válido.';
}
else
if (!preg_match("^.+@.+\..+$", $nuevoemail))
{
$mensaje_error = 'Tu Email no es válido.';
}
$elementos = file($base_datos);
foreach($elementos as $enlinea)
{
list($nombre_usuario, $contrasena, $email, $nombre_completo, $activa, $gusto, $puntuacion, $tiempo_dedicado, $curso) = 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, '|');
fwrite($archivo, $gusto);
fwrite($archivo, '|0');
fwrite($archivo, $puntuacion);
fwrite($archivo, '|00:00:00');
fwrite($archivo, '|');
fwrite($archivo, $tiempo_dedicado);
fwrite($archivo, '|');
fwrite($archivo, $curso);
fwrite($archivo, "\r\n");
fclose($archivo);
$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>Muscaendo - Registrarse</title>
</head>
<body>
<!-- CABEZA -->
<div id="cabecero">
<div id="menu">
<div id="tabla">
<ul>
<li><a href="#" >Opciones</a></li>
<li><a href="estadisticas.php" >Estadísticas y Perfiles</a></li>
</ul>
</div>
</div>
<div id="menu2">
<div id="tabla2">
<ul>
<li><a href="login.php" 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="">E-mail:</td>
<td align="left"><input name="email" type="text" id="email"></td>
</tr>
<tr align="left">
<td align="left">Gusto musical:</td>
<td align="left"><select name="gusto">
<option value="Pop">Pop</option>
<option value="Rock">Rock</option>
<option value="Jazz">Jazz</option>
<option value="Clásica">Clásica</option>
<option value="Moderna">Moderna</option>
</select></td>
</tr>
<tr align="left">
<td align="left">Curso:</td>
<td align="left"><select name="curso">
<option value="1ºESO">1ºESO</option>
<option value="2ºESO">2ºESO</option>
<option value="3ºESO">3ºESO</option>
<option value="4ºESO">4ºESO</option>
<option value="Bachiller">Bachiller</option>
</select></td>
</tr>
<tr align="left">
<td align="left">Instituto:</td>
<td align="left"><select name="instituto">
<option value="IES Duque de Rivas">IES Duque de Rivas</option>
<option value="IES Europa">IES Europa</option>
<option value="Luyfe">Luyfe</option>
</select></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>
Antes de empezar, aclarar que no uso MYSQL sino el propio PHP que me graba los datos en un archivo .php en forma de "separado por comas".
Mi duda se centra en los institutos. Imaginaos que yo tengo varios archivos que funcionan en forma de base de datos, es decir, tengo un archivo duquederivas.php otro europa.php y otro luyfe.oho que son los nombres de los institutos. Y quiero que cuando selecciones por ejemplo "Duque de rivas" te guarde todos los datos del for de registro justo en la base de datos duquederivas.php.
Espeo vuestra ayuda y gracias.
PD.: Si no sabeis comentad "no sé" porque sino me da una sensación de que pasa de mi la gente.
Supongo que es fácil pero soy bastante novato.