Foros del Web » Programando para Internet » PHP »

Problemilla con iniciar sesion

Estas en el tema de Problemilla con iniciar sesion en el foro de PHP en Foros del Web. Primero ahí acomode ciertas cosas que me parecía le hacían falta Código HTML: <form id= "form1" name= "form1" method= "post" action= "autenticacion.php" > <table width= ...

  #31 (permalink)  
Antiguo 08/06/2011, 13:30
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

Primero ahí acomode ciertas cosas que me parecía le hacían falta

Código HTML:
<form id="form1" name="form1" method="post" action="autenticacion.php">
    <table width="495" border="0" bordercolor="#FFFFFF">
        <tr>
            <td width="50">
                &nbsp;
            </td>
            <td width="145">
                &nbsp;
            </td>
            <td width="129">
                &nbsp;
            </td>
            <td width="61">
                &nbsp;
            </td>
            <td width="76">
                &nbsp;
            </td>
        </tr>
        <tr>
            <td colspan="2" class="Estilo7">
                <div align="right">
                    Nombre de usuario: 
                </div>
            </td>
            <td colspan="2">
                <label>
                    <input name="username" id="username" type="text" size="45" />
                </label>
            </td>
            <td>
                &nbsp;
            </td>
        </tr>
        <tr>
            <td colspan="2" class="Estilo7">
                <div align="right">
                    Contrase&ntilde;a:
                </div>
            </td>
            <td colspan="2">
                <label>
                    <input name="password" id="password" type="password" size="45" />
                </label>
            </td>
            <td>
                &nbsp;
            </td>
        </tr>
        <tr>
            <td colspan="5">
                <div align="center">
                    <a href="nuevousuario.php">
                        Para usuarios no registrados haga click en este link 
                    </a>
                </div>
            </td>
        </tr>
        <tr>
            <td colspan="2">
                <label>
                    <div align="center">
                        <input type="submit" name="Submit" value="Iniciar Sesi&oacute;n" />
                    </div>
                </label>
            </td>
            <td>
                &nbsp;
            </td>
            <td colspan="2">
                <label>
                    <div align="center">
                        <input type="submit" name="Submit2" value="Limpiar Formulario" />
                    </div>
                </label>
            </td>
        </tr>
    </table>
 </form> 
Código PHP:
<?php
include 'conexion.php';

$username $_POST['username']; 
$password $_POST['password']; 

$consultaparainicio"
        SELECT * 
        FROM trabajador 
        WHERE username_trabajador='$username' AND 
              contrasena_trabajador='$password'"

$resultado mysql_query($consultaparainicio) or die(mysql_error());

//vemos si el usuario y contraseña es válido 
//si la ejecución de la sentencia SQL nos da algún resultado 
//es que si que existe esa combinación usuario/contraseña 
if (mysql_num_rows($resultado) != 0){ 
    
//ya que usuario y contraseña son válidos defino una sesion y guardo datos 
    
session_start(); 
    
session_register("autentificado"); 
    
$autentificado "SI"

    
/*$consultadelacoordinacion="SELECT trabajador.id_coordinacion, trabajador.id_trabajador, trabajador.nombre_trabajador, trabajador.apellido_trabajador 
    FROM trabajador 
    WHERE trabajador.id_coordinacion = '1'";*/ 

    
header ("Location: principal.html"); 
}
else { 
    
//si no existe le mando otra vez a la portada 
    
header("Location: X.php"); 

mysql_free_result($resultado);
 
?>
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #32 (permalink)  
Antiguo 08/06/2011, 13:34
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

segundo: prueba con esta conexión a ver si te funciona

Código PHP:
<?php
$HOST 
"localhost";
$USER "user";
$PWD "pwd";
$DB "data_base";
$enlace mysql_connect($HOST,$USER,$PWD);
mysql_select_db($DB,$enlace) or die (mysql_error());
?>
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #33 (permalink)  
Antiguo 08/06/2011, 13:37
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

no seran los cookies? pq volvi a poner !=1 en el if y me sale error
  #34 (permalink)  
Antiguo 08/06/2011, 13:41
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

las cookies no tienen nada que ver con sessiones, se usan para lo mismo, pero no interfieren entre ellos
  #35 (permalink)  
Antiguo 08/06/2011, 13:42
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

Cita:
Iniciado por putapunker Ver Mensaje
no seran los cookies? pq volvi a poner !=1 en el if y me sale error
y qué error te muestra??
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #36 (permalink)  
Antiguo 08/06/2011, 13:42
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

sabes que puse esto "or die(mysql_error());" despues de $resultado = mysql_query($consultaparainicio) y me dice esto


Unknown column 'lmedina' in 'where clause'
  #37 (permalink)  
Antiguo 08/06/2011, 13:46
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

eso significa que tiene un error tu consulta... y eso puede significar que el campo en donde estás guardando username puede que no sea text o varchar


Código PHP:
$consultaparainicio
        SELECT *  
        FROM trabajador  
        WHERE username_trabajador='"
.$username."' AND  
              contrasena_trabajador='"
.$password."'";  
$resultado mysql_query($consultaparainicio) or die(mysql_error()); 
prueba usandolo así
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #38 (permalink)  
Antiguo 08/06/2011, 13:47
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

uffffff tienes mal la consulta !!!
esa columna no existe, revisa tu consulta....
  #39 (permalink)  
Antiguo 08/06/2011, 13:48
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

cuando coloco en el condicional diferente a uno me salen estos errores

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/gaeis/autenticacion.php on line 17

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /var/www/gaeis/autenticacion.php:17) in /var/www/gaeis/autenticacion.php on line 21

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /var/www/gaeis/autenticacion.php:17) in /var/www/gaeis/autenticacion.php on line 21

Warning: Cannot modify header information - headers already sent by (output started at /var/www/gaeis/autenticacion.php:17) in /var/www/gaeis/autenticacion.php on line 29

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /var/www/gaeis/autenticacion.php on line 35

Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively. in Unknown on line 0
  #40 (permalink)  
Antiguo 08/06/2011, 13:49
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

pero es que username_trabajador y password_trabajador son varchar(50)
  #41 (permalink)  
Antiguo 08/06/2011, 13:51
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

sabes que puse esto "or die(mysql_error());" despues de $resultado = mysql_query($consultaparainicio) y me dice esto


Unknown column 'lmedina' in 'where clause'
pero te das cuenta que esto es que haces un where y preguntas x la tabla Imedina,
  #42 (permalink)  
Antiguo 08/06/2011, 13:52
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

putapunker, verifica lo que te estoy diciendo, por ahora revisa tu consulta y no le cambies nada más al código porque desde donde yo lo veo está bien, el problema está en la consulta y ya te lo dijo el "or die(mysql_error())" que te sugerí, luego si te salen más errores verificamos el resto
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #43 (permalink)  
Antiguo 08/06/2011, 13:55
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

y lo probaste de la otra forma en que te sugerí?

'".$username."' AND pwd'".$password."'
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #44 (permalink)  
Antiguo 08/06/2011, 13:56
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

me tira el mismo error cambiando la sentencia de sql
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/gaeis/autenticacion.php on line 17
  #45 (permalink)  
Antiguo 08/06/2011, 13:56
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

que cangrejo jejejeje nunca habia tenido tanto problema jejejeje
  #46 (permalink)  
Antiguo 08/06/2011, 14:02
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

amigo cambie todo y me da lo mismo
  #47 (permalink)  
Antiguo 08/06/2011, 14:03
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

Solo por probar, hazle un echo al query nuevamente y lo corres en el phpmyadmin.

según lo que yo veo ya funciona la consulta.
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #48 (permalink)  
Antiguo 08/06/2011, 14:09
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

llevamos 47 post, no hagas más cambios pq nos vas a volver loco jaja
  #49 (permalink)  
Antiguo 08/06/2011, 14:10
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

hice el echo al query quitando el "or die" y me tiro este mensaje
Resource id #4

agregando el mensaje
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/gaeis/autenticacion.php on line 15

Warning: Cannot modify header information - headers already sent by (output started at /var/www/gaeis/autenticacion.php:10) in /var/www/gaeis/autenticacion.php on line 30
  #50 (permalink)  
Antiguo 08/06/2011, 14:13
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

jajajajajajajaja, noooo, le hiciste un echo al $resultado o qué?, el debería mostrarte la consulta en el navegador, luego hacés un vil copy & paste en el phpmyadmin y voilà debería funcionar la consulta
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #51 (permalink)  
Antiguo 08/06/2011, 14:16
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

hazle un echo $consultaparainicio; y así sí lo verificas en el phpmyadmin
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #52 (permalink)  
Antiguo 08/06/2011, 14:20
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

si se lo hice al resultado jejeje pero haciendolo en $consultaparainicio si me da el query y lo pongo en phpmyadmin y no me sale ningun error SELECT * FROM trabajador WHERE username_trabajador='jperez' AND contrasena_trabajador='123'
  #53 (permalink)  
Antiguo 08/06/2011, 14:22
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

no es el query siempre lo dire es el condicional IF que esta dando ese problemon
  #54 (permalink)  
Antiguo 08/06/2011, 14:25
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

mi pregunta es: jperez' con contraseña '123' existe en la base de datos??, porque si no existe nos estás haciendo perder el tiempo, ya que si no existe el mysql_num_rows va a ser igual a 0 y no diferente de 0
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #55 (permalink)  
Antiguo 08/06/2011, 14:33
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

haré un poco más de esfuerzo, usa datos que estén en la base de datos para probar, datos que sean verdaderos y que me retornen algún valor diferente de vacio y prueba colocando el código así:

Código PHP:
<?php
session_start
(); 
include 
'conexion.php';

$username $_POST['username']; 
$password $_POST['password']; 

$consultaparainicio"
        SELECT * 
        FROM trabajador 
        WHERE username_trabajador='$username' AND 
              contrasena_trabajador='$password'"

$resultado mysql_query($consultaparainicio) or die(mysql_error());

//vemos si el usuario y contraseña es válido 
//si la ejecución de la sentencia SQL nos da algún resultado 
//es que si que existe esa combinación usuario/contraseña 
if (mysql_num_rows($resultado) != 0){ 
    
//ya que usuario y contraseña son válidos defino una sesion y guardo datos 
    
session_register("autentificado"); 
    
$autentificado "SI"

    
/*$consultadelacoordinacion="SELECT trabajador.id_coordinacion, trabajador.id_trabajador, trabajador.nombre_trabajador, trabajador.apellido_trabajador 
    FROM trabajador 
    WHERE trabajador.id_coordinacion = '1'";*/ 

    
header ("Location: principal.html"); 
}
else { 
    
//si no existe le mando otra vez a la portada 
    
header("Location: X.php"); 

mysql_free_result($resultado);
 
?>
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #56 (permalink)  
Antiguo 08/06/2011, 14:40
 
Fecha de Ingreso: junio-2010
Mensajes: 70
Antigüedad: 14 años, 5 meses
Puntos: 1
Respuesta: Problemilla con iniciar sesion

jperez y 123 son los campos que estan en la tabla ni es una tabla ni una base de datos, son los datos que estoy consultando para ver si existe y validar que jperez entre al sistema eso es lo que toy haciendo
  #57 (permalink)  
Antiguo 08/06/2011, 14:47
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

mira, como yo veo tu código lo que estás haciendo es buscando un login en la BD y en caso de que exista le cree la session y de ahí ya tu sabrás que más pueda hacer o que de lo contrario lo ingrese o se registre o ambas o no sé

después de consultar lo que se ingresa en el form pasa lo siguiente,

si existen los datos en la BD el mysql_num_rows va a ser != 0 y te creará la session y el resto y te redirigirá a otra parte y fin del proceso, cierto?

no entiendo a que viene

Cita:
Respuesta: Problemilla con iniciar sesion
jperez y 123 son los campos que estan en la tabla ni es una tabla ni una base de datos, son los datos que estoy consultando para ver si existe y validar que jperez entre al sistema eso es lo que toy haciendo
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #58 (permalink)  
Antiguo 08/06/2011, 14:52
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

animo lobo_php que ya casi llegas jajaj
  #59 (permalink)  
Antiguo 08/06/2011, 14:52
Avatar de lobo_php  
Fecha de Ingreso: noviembre-2007
Ubicación: Cali-Colombia
Mensajes: 1.869
Antigüedad: 17 años
Puntos: 75
Respuesta: Problemilla con iniciar sesion

estoy por tirar la tohalla iviamontes
__________________
Cabuntu.org - Difundiendo Software Libre en Cali, Colombia
Usuario Linux # 483175
  #60 (permalink)  
Antiguo 08/06/2011, 14:54
Avatar de iviamontes  
Fecha de Ingreso: enero-2011
Ubicación: $cubano->Arg->Mendoza
Mensajes: 1.184
Antigüedad: 13 años, 10 meses
Puntos: 209
Respuesta: Problemilla con iniciar sesion

jajja, ese no es el espíritu del software libre jaja

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:17.