Ver Mensaje Individual
  #5 (permalink)  
Antiguo 24/04/2007, 11:53
Avatar de Uri Macías
Uri Macías
 
Fecha de Ingreso: marzo-2007
Mensajes: 15
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Problema validando formulario en PHP con JavaScript

Ya he separado el código de JS y PHP, espero que no sea un posterior problema la presentación de todo el código.

Respecto a lo demás, si display_errors = On, y todo funciona correctamente hasta donde se supone debe de hacer la validación.

si no es molestia muestro el código entero.

Código PHP:
<?php
    ini_set
('session.cookie_lifetime','120');
    
ini_set('session.gc_maxlifetime','120');
    
session_start();
?>
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Prueba de autenticaci&oacute;n</title>
    <script language="javascript" type="text/javascript">
        try{alert("está por enviar datos")}catch(e){print e}
        function vacio(campo) {
            for ( i = 0; i < campo.length; i++ ) {
                    if ( campo.charAt(i) != " " ) {
                            return true
                    }
            }
            return false
        }
        
        function valida(Formulario){
            var retorna = false
            if(vacio(Formulario.usuario.value) == false){
                retorna = false
            }
            else{
                if(vacio(Formulario.contrasena.value) == false){
                    retorna = false
                }
                else
                    return retorna = true
                }
            }
            if (retorna == false){
                alert ("No debe haber campos vacios")
            }
            return retorna
        }
    </script>
</head>

<body>
    <?php
    
if(!isset($_POST['usuario'])){
        
formulario();
    }
    else{
        
autentica($_POST['usuario'], $_POST['contrasena']);
    }
    
?>
    
</body>
</html>
<?php 
    
function formulario(){
        print 
'<form name="autentica" method="post" action="inicioPrueba.php" onSubmit="return valida(this);">
        <label>Usuario</label>
        <input name="usuario" type="text" id="usuario" size="16" maxlength="16">
        <label>Contraseña</label>
        <input name="contrasena" type="password" id="contrasena" size="16" maxlength="16">
        <input type="submit" name="Submit" value="Registrar">
        </form>'
;        
        }
        
        function 
autentica($nick$pass){
            if(!isset(
$_SESSION['intentos'])){
                
$_SESSION['intentos']=1;
            }
            else{
                
$_SESSION['intentos'] += 1;
            }
            if(
$_SESSION['intentos'] < 4){
                include 
"../Connections/conexion.php";
    
                
$query sprintf("SELECT * FROM tb_usuarios WHERE nick='%s' and pass='%s'",
                    
mysql_real_escape_string($nick),
                    
mysql_real_escape_string($pass));
                
$resultado mysql_query($query);
                
                if(!
$resultado){
                    
$message  'Consulta inválida: ' mysql_error() . "\n";
                    
$message .= $query;
                    die(
$message);
                }
                else{
                    if(
$row mysql_fetch_row($resultado)){
                        print 
$row[7] . "\n";
                        print 
$row[8];
                    }
                    else{
                        print 
"El usuario o contraseña son inválidos, por favor intente de nuevo";
                        
formulario();
                    }
                }
//Fin If valida resultado
                
            
}//Fin comprobación de intentos
            
else{
                print 
"A intentado más de tres veces. Por favor intente de nuevo en dos minutos";
            }    
        }
?>