Foros del Web » Programando para Internet » PHP »

Ayuda con sistema de usuarios

Estas en el tema de Ayuda con sistema de usuarios en el foro de PHP en Foros del Web. Ayuda con php y my sql hola me llamo sergio y estoy creando una pagina web para un proyecto, al principio busque como hacer un ...
  #1 (permalink)  
Antiguo 26/04/2008, 21:32
 
Fecha de Ingreso: abril-2008
Mensajes: 15
Antigüedad: 16 años, 6 meses
Puntos: 0
Ayuda con sistema de usuarios

Ayuda con php y my sql

hola me llamo sergio y estoy creando una pagina web para un proyecto, al principio busque como hacer un sistema de usuarios sencillo, lo encontre y lo puse a funcionar, todo funcionaba correctamente en el dominio gratuito que tenia hata qie decidi comprar uno y por lo tanto mudar las bases de datos, pero ahora me dice que tengo el siguiente error y no se por que:

Warning: Cannot modify header information - headers already sent by (output started at /home/a5179736/public_html/includes/reg.php:76) in /home/a5179736/public_html/includes/reg.php on line 111
Nota: el codigo funciona perfectamente para registrar usuario, pero ala hora de intentar ingresar marca el error, les agradeceria mucho me digeran cual es el error.

el codigo de reg.php es este:

<?
$tipo=$_POST['tipo'];
if ($tipo=="registro"){
///////////////////////////////////Registro En La Base De Datos///////////////////////////////////////////////////
include ("config.php");
////////////// se Recogen Las Variables del Formulario de Registro
$nombre=$_POST['nombre'];
$email=$_POST['email'];
$frace=$_POST['frace'];
$pass=$_POST['pass'];
$repass=$_POST['repass'];
$usuario=$_POST['usuario'];
////////////////////////////////////////Sentencias SQL////////////////////////////////////////////////////////////
$result=mysql_query($sql,$conexion);
$resulta=mysql_query($sqla,$conexion);
$busca=mysql_fetch_array($resulta);
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////
if ($nombre=="" || $email=="" || $usuario==""){ // Verifica Que los campos no esten vacios

echo "Se Requiere llenar los campos de Usuario, Nomnbre Y Email<BR>"
."<a href='cuerpo.htm'>Volver</a>";

exit;
} else {
///////////////////////////// Se Verifica Que las Dos Contrase�as sean Iaguales/////////////////
if ($pass==$repass){
/////////////////////// Se Verifica Si el Usuario Ya Existe En La Base De Datos///////////
if ($usuario == $busca['usuario']){

echo "Lo Sentimos, El Nombre De Usuario: $usuario <BR>Ya Esta Siendo Utilizado Por Otra Persona<BR>"
."Escoge Otro Nombre De Usuario <a href='cuerpo.htm'><font color='#FF0000'>Volver</font></a>";
exit;
}
if ($nombre == $busca['nombre']){


echo "El Nombre $nombre Ya esta registrado En Nuestra Base De Datos<BR>"
."no Puede Aver Dos Nombres Iguales, Disculpa las Molestias<BR>"
."<a href='cuerpo.htm'><font color='#FF0000'>Volver</font></a>";

exit;
}
if ($email == $busca['email']){

echo "El Correo $email Ya Existe en nuestra base de datos<BR>"
."no Puede Aver Dos Nombres Iguales, Disculpa las Molestias<BR>"
."<a href='cuerpo.htm'><font color='#FF0000'>Volver</font></a>";

exit;
}
///////////////////////////////////Inserta Los Valores En La Base de Datos/////////////////////
mysql_query("INSERT INTO usuario (usuario,pass,nombre,email,frace)
VALUES ('{$usuario}','{$pass}','{$nombre}','{$email}','{$ frace}')",$conexion);
///////////////////////////////////Pagina Despues del Registro/////////////////////////////////////////

echo " Ahora Eres Un Usuario Registrado y estos son tus datos:<BR>";
echo "$nombre<BR>"
."$usuario<BR>"
."$email<BR>"
."$frace<BR>";
echo " <BR><BR><BR><a href='index.htm'>Inicio<BR>";

mysql_close($conexion);
////////////////////////////////////////Fin De Pagina//////////////////////////////////////////////

exit;
}else {

echo " Tu Contrase�a no Coincidia"
."<a href='cuerpo.html'>Volver</a>";

}}}
////////////////////////////////////////////Inicio de Session////////////////////////////////////////////////
else {

include ("config.php");
$pass=$_POST['pass'];
$usuario=$_POST['usuario'];
$comparar = "SELECT * FROM usuario WHERE usuario='$usuario' and pass='$pass'";
$obtener = "SELECT * FROM usuario WHERE usuario='$usuario'";
$resultado = mysql_query($comparar,$conexion);
$dcompara= mysql_fetch_array($resultado);
$dres = mysql_query($obtener,$conexion);
$datos= mysql_fetch_array($dres);
$busuario= $dcompara ['usuario'];
$bnombre= $datos ['nombre'];
$bfrace= $datos ['frace'];
$bemail= $datos ['email'];
//vemos si el usuario y contrase�a es v�ildo
//si la ejecuci�n de la sentencia SQL nos da alg�n resultado
if (mysql_num_rows($resultado)!=0){
session_name("spywa");
session_start();
// Guardamos una variable
$_SESSION['usuario'] = $busuario;
$_SESSION['nombre'] = $bnombre;
$_SESSION['frace'] = $bfrace;
$_SESSION['email'] = $bemail;
$_SESSION["ultimavez"]= date("Y-n-j H:i:s");
///////////////////////////////////////
//echo"Bienvenido $usuario<BR>"
//."$email<BR>"
//."$frace<BR><BR>";
header("Location: index.htm");// Pagina a La que se envian despues de inisiar session
mysql_free_result($resultado);
mysql_free_result($dres);
mysql_close($conexion);
exit;
}else {
//si no existe el usuario
header("Location: cuerpo.htm");
}
}
?>

el codigo de config.php es este:

<?
///////////////////////////////////Variables Del Servidor//////////////////////////////////////////////////
$servidor=""; // Servidor De La Base De datos
$userdb=""; //Usuario De La Base De Datos
$passdb=""; //password De La Base De Datos
$dbname =""; //Nombre de La Base De Datos
/////////////////////////Conexion Y Selecion de La Base De Datos//////////////////////////////////////////////
$conexion=mysql_connect("$servidor","$userdb","$pa ssdb"); // Conexion ala Base de Datos
mysql_select_db ("$dbname",$conexion) OR die ("No se puede conectar");
//////////////////////////////////Sentencias SQL//////////////////////////////////////////////////////////////
$comparar = "SELECT * FROM usuario WHERE usuario='$usuario' and pass='$pass'";
$obtener = "SELECT * FROM usuario WHERE usuario='$usuario'";
$sql="SELECT * FROM usuario";
$sqla="SELECT * FROM usuario";
$ahora = date("Y-n-j H:i:s");
?>
  #2 (permalink)  
Antiguo 27/04/2008, 19:08
 
Fecha de Ingreso: febrero-2007
Mensajes: 450
Antigüedad: 17 años, 8 meses
Puntos: 3
Re: Ayuda con sistema de usuarios

Cómo estás utilizando la función header() ?

La cuestión parece ser que no puedes utilizarla, seguramente porque el hosting ya añade unas cabeceras. Pero creo que tampoco la estás usando para "lo que es", aunque te funcione...
  #3 (permalink)  
Antiguo 27/04/2008, 20:55
 
Fecha de Ingreso: abril-2006
Mensajes: 1.128
Antigüedad: 18 años, 7 meses
Puntos: 33
Re: Ayuda con sistema de usuarios

SpyWaCorp:
Prueba Cambiar:
session_start();
y ponla al inicio del reg.php
Saludos
Franco
  #4 (permalink)  
Antiguo 11/05/2008, 20:08
 
Fecha de Ingreso: abril-2008
Mensajes: 15
Antigüedad: 16 años, 6 meses
Puntos: 0
Antes que nada gracias por responder c_keeper, la funcion la estoy utilizando para redireccionar a las paginas segun corresponde, si este es el error debo cambiar los header por otra funcion, saber cual es? gracias

hola franco hare lo que dices en cuanto pueda Gracias despues te cuento si me funciono

Última edición por GatorV; 11/05/2008 a las 20:31
  #5 (permalink)  
Antiguo 11/05/2008, 23:43
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años, 7 meses
Puntos: 2534
Re: Ayuda con sistema de usuarios

no es error de header()

se supone que NO debes imprimir.. NADA, antes de enviar algun header() el error dice explicitamente que ya ha sido enviada informacion a partir de la linea... 111 de reg.php

es ahi, tu error... no debes cambiar nada, solo debes respetar el comportamiento natural del PHP y/o servidor ...............
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




La zona horaria es GMT -6. Ahora son las 21:35.