Ver Mensaje Individual
  #1 (permalink)  
Antiguo 29/06/2011, 16:29
GuillermoM
 
Fecha de Ingreso: abril-2011
Ubicación: España, Mdrid
Mensajes: 89
Antigüedad: 13 años
Puntos: 1
Según los datos metidos en form, guardarlos en una base de datos u otra

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($archivomd5($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>
Ese es el código de mi registro.php hay alguna variable liosa que en algunos casos no coinciden pero es una chapuza que bueno... funciona.
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.