elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Como proteger una cartera - billetera de Bitcoin


+  Foro de elhacker.net
|-+  Programación
| |-+  Desarrollo Web
| | |-+  PHP (Moderador: #!drvy)
| | | |-+  login
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: login  (Leído 2,445 veces)
::: Devil :::


Desconectado Desconectado

Mensajes: 449


¡Lucha por lo que quieres y lo Obtendras!


Ver Perfil
login
« en: 11 Septiembre 2008, 16:09 pm »

hola bueno sigo yo y mis problemas ael moderador del foro que cierre mi post anterior o lo borre o algo parecido jejeje

bueno ya logre hacer que el usuario se registrara en la pagina verdad.

ahora mi problema es con el login

codigo del login.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if(!isset($_SESSION[usuario]) ) //comprobamos que no existe la session, es decir, que no se ha logeado, y mostramos el form
{

//Creamos el form k irá a autentificar.php para comprobar los datos con la tabla users
echo '<form action="autentificar.php" method="POST">
Nick: <input type="text" name="nick" size="30"><br>
Password: <input type="password" name="pass" size="30" ><br>
<input type="submit" name="submit" value="Enviar"></form>';

}else{

//SI se ha logeado, mostramos el nick y la opción de deslogearse
//Este sería el menú que saldría a la gente que esta logeada, se puede modificar y añadir cosas
echo 'Bienvenido '.$_SESSION[usuario]; //ej Bienvenido
echo '<br>Tu level es '.$_SESSION[level]; //mostramos el level del user
if($_SESSION[level] == 1)
{
//mostramos el link para ir a la pagina privada porque el user tiene level 1 (*Nota: el level por defecto es 2, por lo tanto no se le mostrará)
//*Nota2: para cambiar el level a 1, se tiene k hacer manualmente por phpmyadmin
echo '<br><a href=paginaprivada.php>Ir a pagina privada</a>';
}

echo '<br><a href=logout.php>Salir</a>'; //link para deslogearse, iría a logout.php

}

?>
<body>
</body>
</html>

codigo de autentificar.php

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?
include('config.php'); //incluimos el config.php que contiene los datos de la conexión a la db

if( ($_POST[nick] == ' ') or ($_POST[pass] == ' ') )//comprobamos que las variables enviadas por el form de login.php tienen contenido
{
Header("Location: login.php"); //estan vacías, volvemos al index
}else{

//comprobamos en la db si existe ese nick con esa pass
$usuarios=mysql_query("SELECT * FROM users WHERE nick='$_POST[nick]' and pass='$_POST[pass]' ");
if($user_ok = mysql_fetch_array($usuarios)) //si existe comenzamos con la sesion, si no, al index
{

session_register("usuario"); //registramos la variable usuario que contendrá el nick del user
session_register("idusuario"); //registramos la variable idusuario que contendrá la id del user
session_register("level"); //registramos la variable level que contendrá el level del user
//damos valores a las variables de la sesión
$_SESSION[usuario] = $user_ok["nick"]; //damos el nick a la variable usuario
$_SESSION[idusuario] = $user_ok["id"]; //damos la id del user a la variable idusuario
$_SESSION[level] = $user_ok["level"]; //damos el level del user a la variable level
Header("Location: login.php"); //volvemos al login donde nos saldrá nuestro menú de usuario

}else{
echo 'Nick y pass incorrectos';
}

}
?>
<body>
</body>
</html>


codigo de conf.php

$dbhost="localhost"; //Host del mysql
$dbuser="usuario"; //Usuario del mysql
$dbpass="password"; //Password del mysql
$db="basededatos"; //db donde se creará la tabla users

//conectamos y seleccionamos db
mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");

//Comenzamos la sesión, esto se explica despues en el Sistema de Login
session_start();


y estos dos son los errores alguien podria ayudarme con eso me da el error en session start pero por que????

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/puntonet/public_html/login.php:7) in /home/puntonet/public_html/config.php on line 18

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/puntonet/public_html/login.php:7) in /home/puntonet/public_html/config.php on line 18


« Última modificación: 11 Septiembre 2008, 16:32 pm por ::: Devil ::: » En línea

NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA
::: Devil :::


Desconectado Desconectado

Mensajes: 449


¡Lucha por lo que quieres y lo Obtendras!


Ver Perfil
Re: login
« Respuesta #1 en: 11 Septiembre 2008, 18:12 pm »

coloque el sessionstart al principio al final en el medio en todos lados por que segun era eso pero no me sigue dando el mismo error


En línea

NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA
cassiani


Desconectado Desconectado

Mensajes: 978


« Anterior | Próximo »


Ver Perfil WWW
Re: login
« Respuesta #2 en: 11 Septiembre 2008, 19:04 pm »

No puedes abrir la sesión después de haber escrito texto en la página, coloca session_start() unica y exclusivamente al inicio de la pagina, ya que debe ser ejecutado antes de cualquier salida HTML para que la información se envie junto con las cabeceras del HTTP.

Eso de estar regandolo en toda la pagina  :-\ es mala idea

Código
  1. <?php
  2. session_start();//iniciamos la sesion
  3. ?>
  4. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  5. <html xmlns="http://www.w3.org/1999/xhtml">
  6. <head>
  7. etc, etc, etc.....

suerte!
En línea

::: Devil :::


Desconectado Desconectado

Mensajes: 449


¡Lucha por lo que quieres y lo Obtendras!


Ver Perfil
Re: login
« Respuesta #3 en: 11 Septiembre 2008, 20:18 pm »

lo hice como me dijistes y me quedo de la siguiente manera

config.php

<?php
   session_start();//iniciamos la sesion
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>
<?
$dbhost="localhost"; //Host del mysql
$dbuser="usuario"; //Usuario del mysql
$dbpass="password"; //Password del mysql
$db="basededatos"; //db donde se creará la tabla users
//conectamos y seleccionamos db
mysql_connect("$dbhost","$dbuser","$dbpass");
mysql_select_db("$db");
?>
<body>
</body>
</html>


y me sigue dando el mismo puto error jejeje


Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/puntonet/public_html/login.php:7) in /home/puntonet/public_html/config.php on line 2

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/puntonet/public_html/login.php:7) in /home/puntonet/public_html/config.php on line 2
En línea

NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA
::: Devil :::


Desconectado Desconectado

Mensajes: 449


¡Lucha por lo que quieres y lo Obtendras!


Ver Perfil
Re: login
« Respuesta #4 en: 11 Septiembre 2008, 20:50 pm »

bueno ya lo acomode jajaja que bien estoy feliz como una lombris jojojojo una simple vaina ya tengo un magister en php de tanto leer

quite el sessionstart al inicio y coloque

<?php
ob_start();
?>

y al final del codigo coloque

<?php
ob_end_flush();
?>

y ahora si no me da ningun error de codigo ni nada y ya cuando inserto los datos del login que estan correctos me redirecciona a la pagina que lo mando joojojo

si alguien necesita un registro de usuarios me dice y se lo mando
En línea

NI TU NI NADIEN PORDRAN CONMIGO SOY MAS FUERTE QUE LA ENVIDIA.

ESTO ESTA DEDICADO A LOS QUE ME JODEN LA VIDA
lucaprodan

Desconectado Desconectado

Mensajes: 48


Ver Perfil WWW
Re: login
« Respuesta #5 en: 16 Octubre 2008, 03:13 am »

hola devil, yo estoy trantando de buscar a alguien que me de una mano para hacer un loguin/out en mi sitio. La onda es que todo visitante que ingrese en mi sitio se registre loguandose, pero no se como hacerlo. Se que tengo que usar PHP y Mysql pero no se casi nada de eso.

un abrazo
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Http login
Hacking
thepooh 2 2,078 Último mensaje 1 Junio 2011, 10:30 am
por thepooh
SSH - Borrar el last login
Hacking
VCore 2 6,034 Último mensaje 14 Julio 2011, 14:30 pm
por VanX
Login en Php con txt
PHP
tunante2012 6 8,092 Último mensaje 27 Diciembre 2012, 20:07 pm
por #!drvy
login
Desarrollo Web
Pirat3net 5 1,701 Último mensaje 9 Abril 2012, 21:24 pm
por jhonatanAsm
crackear un login de exe
Ingeniería Inversa
iprofamily 3 2,182 Último mensaje 23 Enero 2013, 22:24 pm
por SaGaRaS
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines