Tema: Login en php
Ver Mensaje Individual
  #1 (permalink)  
Antiguo 26/03/2012, 04:18
mcg_4
 
Fecha de Ingreso: marzo-2012
Mensajes: 24
Antigüedad: 12 años, 1 mes
Puntos: 0
Pregunta Login en php

Hola,
Estoy empezando con PHP y he intentado adaptar un código para que al mandar los datos de un formulario para presupuestar un trabajo, salte a una página de login o bien registro dependiendo de si ya se es usuario. En caso de ser usuario se validaría y se enviaría finalmente el formulario creando un e-mail con los datos introducidos más los de la base de datos sobre el usuario que los ha mandado. Si no lo es, debe registrarse introduciendo sus datos y seguidamente mandar el formulario.

El siguiente código es el de la página en la que se marca si se es usuario o no y dependiendo de eso se habilitan unos campos u otros. Pero el código no funciona bien, alguien podría echarme una mano con los errores?
Mil gracias!!

Código PHP:
[..]
<div class="contenidos5">
    <?php
 
if (document.presupuestoslogin.pw.disabled){
     
session_start();
    
mysql_connect('mysql4.000webhost.com','a7487191_mireia','******')or die ('Ha fallado la conexi&oacute;n: '.mysql_error());
    
mysql_select_db('a7487191_presus')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
 
    function 
quitar($mensaje)
    {
        
$nopermitidos = array("'",'\\','<','>',"\"");
        
$mensaje str_replace($nopermitidos""$mensaje);
        return 
$mensaje;
    }    
    if(
trim($HTTP_POST_VARS["usuario"]) != "" && trim($HTTP_POST_VARS["pass"]) != "")
    {
        
$usuario strtolower(htmlentities($HTTP_POST_VARS["usuario"], ENT_QUOTES));   
        
$password $HTTP_POST_VARS["pass"];
     
 
        
$result mysql_query('SELECT password, usuario FROM usuarios WHERE usuario=\''.$usuario.'\'');
        if(
$row mysql_fetch_array($result)){
        if(
$row["pass"] == $password){
 
            
$_SESSION["k_username"] = $row['usuario'];
           
            echo 
'Has sido logueado correctamente '.$_SESSION['k_username'].' <p>';
            echo 
'<a href="presus.php">Index</a></p>';
        }else{
            echo 
'Password incorrecto';
        }
    }else{
        echo 
'Usuario no existente en la base de datos';
    }
    
mysql_free_result($result);
}else{
    echo 
'Debe especificar un usuario y password';
}
mysql_close();
}
 
else
    
session_start();
    
mysql_connect('mysql4.000webhost.com','a7487191_mireia','******')or die ('Ha fallado la conexi&oacute;n: '.mysql_error());
    
mysql_select_db('a7487191_presus')or die ('Error al seleccionar la Base de Datos: '.mysql_error());
    if (isset(
$_POST["usuario"])) {
        
$usuario $_POST["usuario"];
        
$password $_POST["pass"];
        
$password2 $_POST["pw"];
        
$email $_POST["email"];
        
// Hay campos en blanco
        
if($usuario==NULL|$password==NULL|$password2==NULL|$email==NULL) {
            echo 
"un campo est&aacute; vacio.";
        
        }else{
            
// ¿Coinciden las contrase&ntilde;as?
        
if($password!=$password2) {
            echo 
"Las contrase&ntilde;as no coinciden";
        }else{
            
// Comprobamos si el nombre de usuario o la cuenta de correo ya exist&iacute;an
            
$checkuser mysql_query("SELECT usuario FROM usuarios WHERE usuario='$usuario'");
            
$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)
                VALUES (\''
.$usuario.'\',\''.$password.'\',\''.$email.'\',\''.date("Y-m-d").'\')';
               
                
mysql_query($query) or die(mysql_error());
                echo 
'El usuario '.$usuario.' ha sido registrado de manera satisfactoria.<br />';
                echo 
'Ahora puede entrar ingresando su usuario y su password <br />';
                

            }
        }
    }
}
?>
                <pre style="font-family:Arial, Helvetica, sans-serif;font-size:14px;color:#000; margin-left:40px;">Rellene los siguientes campos si quiere recibir el presupuesto acorde con sus especificaciones.</pre>
              
                <form action="presus.php" method="post" name="presupuestoslogin" id="presupuestoslogin" >
                 <? 
            
foreach( $_POST as $key => $value ) { 
                echo 
"<input type='hidden' name='".$key."' value='".$value."'>"
            }
        
?>
          
                <table cellpadding="1px" cellspacing="2px">
                <tr>
                    <td colspan="2"><label><input name="registrado" type="radio" id="registradosi"  value="Soy un usuario registrado" checked="checked" onclick="document.presupuestoslogin.pw.disabled=!document.presupuestoslogin.pw.disabled;document.presupuestoslogin.nombre.disabled=!document.presupuestoslogin.nombre.disabled;document.presupuestoslogin.tlf.disabled=!document.presupuestoslogin.tlf.disabled;document.presupuestoslogin.mail.disabled=!document.presupuestoslogin.mail.disabled;document.presupuestoslogin.empresa.disabled=!document.presupuestoslogin.empresa.disabled;document.presupuestoslogin.direccion.disabled=!document.presupuestoslogin.direccion.disabled"/><font color="#000000" size="2" face="Arial, Helvetica, sans-serif">Soy un usuario registrado</font></label><br/><label><input onclick="document.presupuestoslogin.pw.disabled=!document.presupuestoslogin.pw.disabled;document.presupuestoslogin.nombre.disabled=!document.presupuestoslogin.nombre.disabled;document.presupuestoslogin.tlf.disabled=!document.presupuestoslogin.tlf.disabled;document.presupuestoslogin.mail.disabled=!document.presupuestoslogin.mail.disabled;document.presupuestoslogin.empresa.disabled=!document.presupuestoslogin.empresa.disabled;document.presupuestoslogin.direccion.disabled=!document.presupuestoslogin.direccion.disabled" name="registrado" type="radio" id="registradono" value="No soy un usuario registrado"/><font color="#000000" size="2" face="Arial, Helvetica, sans-serif" >No soy un usuario registrado</font></label></td>
                
                  
                 <tr>
                      <td width="350px"><label for="usuario"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Usuario*:</strong></font></label></td>
                      <td ><input type="text" id="usuario" name="usuario" value="" size="40" /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="pass"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Contraseña*:</strong></font></label></td>
                      <td ><input type="password" id="pass" name="pass" value="" size="40" /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="pw"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Repetir contraseña*:</strong></font></label></td>
                      <td ><input type="password" id="pw" name="pw" value="" size="40" disabled/></td>
                 </tr>
                 <tr>
                      <td align="left" width="350px"><label for="nombre"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Persona de contacto*:</strong></font></label></td>
                      <td ><input type="text" id="nombre" name="nombre" value="" size="60" disabled/></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="tlf"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Teléfono*:</strong></font></label></td>
                      <td ><input type="text" id="tlf" name="tlf" value="" size="15" disabled /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="mail"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>E-mail*:</strong></font></label></td>
                      <td ><input type="text" id="mail" name="mail" value="" size="30" disabled /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="empresa"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Empresa:</strong></font></label></td>
                      <td ><input type="text" id="empresa" name="empresa" value="" size="15" disabled /></td>
                 </tr>
                 <tr>
                     <td width="350px"><label for="direccion"><font color="#000000" size="2" face="Arial, Helvetica, sans-serif"><strong>Dirección:</strong></font></label></td>
                     <td ><input type="text" id="direccion" name="direccion" value="" size="60" disabled /></td>
                 </tr>
                 <tr>
                      <td colspan="2"><font size="1" face="Arial, Helvetica, sans-serif" color="#000000">*Campos obligatorios.</font></td>
                  </tr>
                  <tr>
                 <tr>
                     <td colspan="2">&nbsp;</td>
                 </tr>
                 <tr>
                     <td></td>
                      <td align="left"><input type="submit" name="enviar" id="enviar" value="Enviar" /><input type="reset" name="borrar" id="borrar" value="Restablecer" /></td>
                  </tr>
                  </table>
              </form>
           </div>
        [..]
Muchísimas gracias!!Agradeceré muchísimo cualquier ayuda!!
Feliz día!