• Viernes 8 de Noviembre de 2024, 12:37

Autor Tema:  Validar Formulario  (Leído 1994 veces)

Belu

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Validar Formulario
« en: Jueves 19 de Febrero de 2009, 14:53 »
0
Hola a todos, recien estoy empezando con php y necesito ayuda, hice un  formulario  en php y quisiera hacerle una validacion a todos los campos y no se como, le dejo mi codigo, desde ya muchas gracias por su ayuda




<?php
session_start();
//datos para establecer la conexion con la base de mysql.
mysql_connect('localhost','Belu')or die ('Ha fallado la conexión: '.mysql_error());
mysql_select_db('rincondulce_db_es')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
function formRegistro(){
?>

<HTML>
            <HEAD>
            <TITLE>Rincon Dulce</TITLE>
            
            <BODY>
            
<table border="0" width="100%" cellpadding="0" cellspacing="0" background="barrablanca.jpg" bgcolor="#FFFBFF">
   <tr>
      <td width="6">&nbsp;</td>
      <td width="144" align="left" valign="middle">
         <nobr><a href="ver_carrito.php"><img src="carrito1.gif" align="absmiddle" border="0"></a></nobr>
      </td>
      
      <td height="25">

         
</table>


<table border="0" width="100%" cellpadding="0" cellspacing="0">
   <tr valign="middle">
      
         <td height="32" bgcolor="#F7C373" width="100"><nobr><a href="registrar.php"><img src="reg.jpg" border="0" align="top" width="121" height="32"></a><img src="terminaciobarra2.jpg"></nobr></td>

         <td height="32" class="menu" valign="middle" bgcolor="#EF9610" background="barranaranja22.jpg">
            
               
               <form action="validar_usuario.php" method="post">
               <font color="white">
               <nobr>
               <b>Login</b>&nbsp;&nbsp;&nbsp;
               <font color="white"><b>Usuario</b></font> <input type="text" name="usuario" size="20" maxlength="20" />&nbsp;

               <font color="white"><b>Contraseña</b></font> <input type="password" name="password" size="10" maxlength="10" />&nbsp;
               <input type="submit" value="Ingresar"  src="botonir4.jpg" type="image" class="noborder">
               
               </font>
               </form>

            
   <tr>
<td bgcolor="#F7B218" colspan="4" height="3" class="minimo">&nbsp;</td>
   </tr>
</table><br class="pixel6"><br class="pixel6">

<table cellspacing="0" cellpadding="0" border="0" width="100%" valign="top">
   <tr valign="top">
      
         <td width="1%">
            

<center><img src="logoweb1.jpg"></center><br>

<style>
.TDMenu{
   height: 25px;
   BORDER-LEFT: #B3B0B0 1px solid;
   BORDER-RIGHT: #B3B0B0 1px solid;
   BORDER-BOTTOM: #B3B0B0 1px solid;
  COLOR: #525152;
  FONT-FAMILY: tahoma, Arial, Helvetica;
  FONT-SIZE: 11px;
  LINE-HEIGHT: 13px;
  TEXT-DECORATION: none;
  font-weight:bold;   
  cursor: hand;
  margin-left: 5px;
   }
      
.TDMenu A{
   COLOR: #525152;
  FONT-FAMILY: tahoma, Arial, Helvetica;
  FONT-SIZE: 11px;
  LINE-HEIGHT: 13px;
  TEXT-DECORATION: none;
  font-weight:bold;   
  margin-left: 5px;
   }   
</style>


<table cellspacing="0" cellpadding="0" border="0" width="137" bgcolor="#ffffff" style="MARGIN:0px;" align="left">
   
   
      <tr>

         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#F5F5F5"><a href="index.php"><font color="#A55129">Inicio</font></a></td></tr>
      
         
      </tr>
<tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Desayunos">Desayunos</a></td>

         
      </tr>
      
   
      <tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Brindis">Brindis</a></td>
         
      </tr>
      
      <tr>

         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Chocolates">Chocolates</a></td>
         
      </tr>
      
      <tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Fechases">Fechas especiales</a></td>

         
      </tr>
      
      
      <tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Picadas">Picadas</a></td>
         
      </tr>
      
   <tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Peluches">Peluches</a></td>
         
      </tr>
      
         
      </tr>
      
   
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=Adicionales">Adicionales.</a></td>
         
      </tr>
      
      <tr>
         
            <td class="TDMenu" onclick="mClk(this)" bgcolor="#FFFFFF"><a href="productos.php?ide=envios_pagos">Envíos y pagos.</a></td>   
      </tr>
      
</table>

<center><H2><b><u>Datos de registro</b></H2></center></u>
<Form Action="registrar.php" method="post">
<center><p><b>Usuario:&nbsp<input type="text" name="username" size="20" maxlength="20" /></center>
<center><p><b>Contraseña:&nbsp<input type="password" name="password" size="20" maxlength="10" /></center>
<center><p><b>Confirmar contraseña:&nbsp<input type="password" name="password2" size="20" maxlength="10" /></center>
<center><p><b> E-Mail:&nbsp<input type="text" name="email" size="20" maxlength="40" />

<center><H2><b><u>Datos personales</b></H2></center></u>
<center><p><b>Nombre:&nbsp<input type="text" name="nombre" size="20" maxlength="30" /></center>
<center><p><b>Apellido:&nbsp<input type="text" name="apellido" size="20" maxlength="50" /></center>
<center><p><b>Direccion:&nbsp<input type="text" name="direccion" size="20" maxlength="100" /></center>
<center><p><b>Ciudad:&nbsp<input type="text" name="ciudad" size="20" maxlength="30" /></center>
<center><p><b>Provincia:&nbsp<input type="text" name="provincia" size="20" maxlength="30" /></center>
<center><p><b>Pais:&nbsp<input type="text" name="pais" size="20" maxlength="30" /></center>
<center><p><b>Telefono:&nbsp<input type="text" name="telefono" size="20" maxlength="20" />
<center><p><b>Celular:&nbsp<input type="text" name="celular" size="20" maxlength="20" />

<center><input type="submit" value="Registrar"><br></center>
</form>
</body>
</html>
<?php
}
// verificamos si se han enviado ya las variables necesarias.
if (isset($_POST["username"])) {
   $username = $_POST["username"];
   $password = $_POST["password"];
   $password2 = $_POST["password2"];
   $email = $_POST["email"];
   $nombre= $_POST["nombre"];
   $apellido= $_POST["apellido"];
   $direccion= $_POST["direccion"];
   $ciudad= $_POST["ciudad"];
   $provincia= $_POST["provincia"];
   $pais= $_POST["pais"];
   $telefono= $_POST["telefono"];
   $celular= $_POST["celular"];
   // Hay campos en blanco
   if($username==NULL|$password==NULL|$password2==NULL|$email==NULL) {
      echo "un campo está vacio.";
      formRegistro();
   }else{
      // ¿Coinciden las contraseñas?
      if($password!=$password2) {
         echo "Las contraseñas no coinciden";
         formRegistro();
      }else{
         // Comprobamos si el nombre de usuario o la cuenta de correo ya existían
         $checkuser = mysql_query("SELECT usuario FROM usuarios WHERE usuario='$username'");
         $username_exist = mysql_num_rows($checkuser);
         $checkemail = mysql_query("SELECT email FROM usuarios WHERE email='$email'");
         $email_exist = mysql_num_rows($checkemail);
         if ($email_exist>0|$username_exist>0) {
            echo "El nombre de usuario o la cuenta de correo estan ya en uso";
            formRegistro();
         }else{
            $query = 'INSERT INTO usuarios (usuario, password, email, fecha, nombre, apellido, direccion, ciudad, provincia, pais, telefono, celular)
            VALUES (''.$username.'',''.$password.'',''.$email.'',''.date("Y-m-d").'', ''.$nombre.'', ''.$apellido.'', ''.$direccion.'', ''.$ciudad.'', ''.$provincia.'', ''.$pais.'', ''.$telefono.'', ''.$celular.'')';
            mysql_query($query) or die(mysql_error());
            echo 'El usuario '.$username.' ha sido registrado de manera satisfactoria.<br />';
            echo 'Ahora puede entrar ingresando su usuario y su password <br />';
            ?>
            <FORM ACTION="validar_usuario.php" METHOD="post">
            <div align="right">
                  <a href="index.php"><img src="volver2.gif" alt="Volver a la página anterior" align="middle" border="0" height="29" width="103"></a>&nbsp;&nbsp;
               </div>
            </FORM>
            <?php
         }
      }
   }
}else{
   formRegistro();
}
?>

shadow_rev

  • Miembro MUY activo
  • ***
  • Mensajes: 397
  • Nacionalidad: co
  • Un SPARTAN no muere en combate
    • Ver Perfil
    • http://shadowrev.blogspot.com
Re: Validar Formulario
« Respuesta #1 en: Jueves 19 de Febrero de 2009, 19:48 »
0
Te recomiendo que uses un solo formulario para validar y enviar la información; por lo que pude ver, usas 3 (<form action="validar_usuario.php">...... <form action="registrar.php">........... <form action="validar_usuario.php">.......... este último no entiendo que función tiene). También, puedes utilizar 2 scripts distintos (uno que despliegue el formulario y otro que haga la validación) para que no te compliques tanto; si lo que pretendes es mantener el formulario después de que se haga el registro, en el script de validación puedes hacer un redirect hacia el script que despliega el formulario. Ahora, al código:

- Cuando vayas a verificar si un campo está vacío, utiliza la función is_null() o empty(), en la página de php encuentras la documentación de ambas funciones
- La comparación de cadenas la puedes hacer con strcmp(), de nuevo php.net te ayuda a saber cómo funciona.

Por último, la próxima vez utiliza las etiquetas CODE para postear código, ya que es bien difícil leer lo que pusiste.

:suerte:
Volará quien le ponga alas a sus sueños (Candidate for goddess)
Si el mal existe en este mundo, reside en el corazón de la humanidad (Edward D. Morrison - Tales of Phantasia)
Lo único que puedes cambiar del pasado, es lo que sientes por él en el presente (Lockon Stratos - Mobile Suit Gundam 00)
Ingeniero de Sistemas

Belu

  • Nuevo Miembro
  • *
  • Mensajes: 2
    • Ver Perfil
Re: Validar Formulario
« Respuesta #2 en: Jueves 26 de Febrero de 2009, 13:52 »
0
Muchisimas gracias shadow_rev, fue de gran ayuda...  :good: