el problema es cuando el usuario se logea, la pagina queda en blanco, si me registro, éste se conecta a la base de datos de miarroba y guarda los datos del usuario, pero al momento de logearse se queda en blanco, hace el linkeo con "entrar.php", pero se queda en blanco
alguna idea del por que?? :/
pucha, ojala puedan ayudarme, les dejo el codigo para que lo vean, saludos y gracias de ante mano
config.php
Código PHP:
<?
unset($config) ;
$config[1] = 'mysql.webcindario.com' ; # Puede ser "localhost" aunque también una URL o una IP
$config[2] = 'xxxx' ; # Usuario de la base de datos
$config[3] = 'xxxx' ; # Contraseña de la base de datos
$config[4] = 'xxxx ' ; # Nombre de la base de datos
$conectar = @mysql_connect($config[1],$config[2],$config[3]) or exit('Datos de conexión incorrectos.') ;
mysql_select_db($config[4],$conectar) or exit('No existe la base de datos.') ;
?>
Código PHP:
<?
if($_POST[enviar]) {
require 'config.php' ;
function quitar($texto) {
$texto = trim($texto) ;
$texto = htmlspecialchars($texto) ;
$texto = str_replace(chr(160),'',$texto) ; # Elimina espacios que no pueden ser borrados por trim()
return $texto ;
}
$nick = quitar($_POST[nick]) ;
$email = quitar($_POST[email]) ;
$con = mysql_query("select count(id) from usuarios where nick='$nick' or email='$email'") ;
if(mysql_result($con,0,0)) {
echo 'El nick ya existe en la base de datos o ya está registrado el email. Haz click <a href="javascript:history.back(-1)">aquí</a> para regresar.' ;
}
else {
$fecha = time() ;
$contrasena = md5(md5(quitar($_POST[contrasena]))) ;
$sexo = quitar($_POST[sexo]) ;
mysql_query("insert into usuarios (fecha,nick,contrasena,email,sexo,ip) values ('$fecha','$nick','$contrasena','$email','$sexo','$_SERVER[REMOTE_ADDR]')") ;
echo 'Has sido registrad@ satisfactoriamente. Haz click <a href="index.php">aquí</a> para regresar a la página principal e iniciar sesión' ;
}
}
else {
?>
<script>
function revisar() {
if(formulario.nick.value.length < 3) {
alert('El nick debe contener por lo mínimo 3 caractéres.') ;
return false ;
}
if(formulario.contrasena.value.length < 6) {
alert('La contraseña debe contener por lo mínimo 6 caractéres.') ;
return false ;
}
if(formulario.contrasena.value != formulario.c_contrasena.value) {
alert('Las contraseñas no son correctas.') ;
return false ;
}
if(!/^w+([.-]?w+)*@w+([.-]?w+)*(.w{2,4})+$/.test(formulario.email.value)) {
alert('Debes poner un email válido.') ;
return false ;
}
}
</script>
<form name="formulario" method="post" action="<?=$_SERVER[PHP_SELF]?>" onsubmit="return revisar()">
<b>Nick:</b><br>
<input type="text" name="nick" maxlength="20"><br>
<b>Contraseña:</b><br>
<input type="password" name="contrasena" maxlength="10"><br>
<b>Confirmar contraseña:</b><br>
<input type="password" name="c_contrasena" maxlength="10"><br>
<b>Email:</b><br>
<input type="text" name="email" maxlength="40"><br>
<b>Sexo:</b><br>
<select name="sexo">
<option value="0">Masculino
<option value="1">Femenino
</select><br><br>
<input type="submit" name="enviar" value="Registrar">
</form>
</div>
<?
}
?>
Código PHP:
<?
require 'config.php';
function quitar($texto){
$texto = trim($texto);
$texto = htmlspecialchars($texto);
# --> Elimina espacios que no pueden ser borrados por trim()
$texto = str_replace(chr(160),'',$texto);
return $texto ;
}
if($_POST[enviar]){
$nick = quitar($_POST[nick]);
$contrasena = md5(quitar($_POST[contrasena]));
$con = mysql_query("select id from usuarios where nick='$nick' and contrasena='$contrasena'");
if(!$con){
if (mysql_num_rows($con) == 0){
echo 'Nick o contraseña incorrecta. Haz click <a href="javascript:history.back(-1)">aquí</a> para regresar.';
}
else{
$datos = mysql_fetch_assoc($con);
setcookie('uid',$datos[id],time()+604800);
setcookie('unick',$nick,time()+604800);
setcookie('ucontrasena',$contrasena,time()+604800);
header("location: $_SERVER[HTTP_REFERER]");
}
}
else{
echo 'Error con la consulta.'.mysql_error().'<br>Haz click <a href="javascript:history.back(-1)">aquí</a> para regresar.';
}
}
?>
logueo.php
Código PHP:
<?
if(!$_COOKIE[uid]) {
?>
<form method="post" action="entrar.php">
<b>Nick:</b><br>
<input type="text" name="nick" maxlength="20"><br>
<b>Contraseña:</b><br>
<input type="password" name="contrasena" maxlength="20"><br><br>
<input type="submit" name="enviar" value="Iniciar Sesión">
</form>
<p><a href="registrar.php"> -->Registrate aqui <-- </a>
<?
}
else {
?>
Bienvenid@ <b><?=$_COOKIE[unick]?></b><br><br>
<br>
<a href="salir.php">Salir</a>
<?
}
?>
Código PHP:
<?
require 'config.php' ;
$con = mysql_query("select count(id) from usuarios where id='$_COOKIE[uid]' and nick='$_COOKIE[unick]' and contrasena='$_COOKIE[ucontrasena]'") ;
if(!mysql_result($con,0,0)) {
exit('<p><b>Esta sección es sólo para usuari@s registrad@s.</b><p><a href="javascript:history.back(-1)">» Regresar</a>') ;
}
?>
Código PHP:
<?
setcookie('uid') ;
setcookie('unick') ;
setcookie('ucontrasena') ;
header('location: index.php') ;
?>
PD: No soy muy entendido en el tema, asi que traten de explicar con peras y manzanas jajajaja
gracias de ante mano
=)