Foros del Web » Programando para Internet » PHP »

Sistema de registro de usuarios

Estas en el tema de Sistema de registro de usuarios en el foro de PHP en Foros del Web. Hola estoy aciendo un sistema de registro de usuarios, tengo un problema me pone este error al subir el php Parse error: syntax error, unexpected ...
  #1 (permalink)  
Antiguo 26/02/2007, 07:46
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Sistema de registro de usuarios

Hola estoy aciendo un sistema de registro de usuarios, tengo un problema me pone este error al subir el php Parse error: syntax error, unexpected $end.. on line 109

aca esta el codigo completo

Código:
<html><head><? 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()">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@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.' ; } } 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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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>
<script language="Javascript"> 
function disableselect(e){ 
return false 
} 
function reEnable(){ 
return true 
} 
document.onselectstart=new Function ("return false") 
if (window.sidebar){ 
document.onmousedown=disableselect 
document.onclick=reEnable 
} 
</script>
<title>Recomendar</title>
<base target="_self">
<style type="text/css">
<!--
body {  cursor:url(cursor.cur); }
-->
</style>
<SCRIPT language=JavaScript> 
function blockError(){return true;}
window.onerror = blockError;
</SCRIPT>
<STYLE TYPE="text/css">
<!--
 BODY {
  scrollbar-arrow-color:#FFFFFF;
  scrollbar-track-color:#333333;
  scrollbar-shadow-color:#333333;
  scrollbar-face-color:#000000;
  scrollbar-highlight-color:#333333;
  scrollbar-darkshadow-color:#333333;
  scrollbar-3dlight-color:#333333;
 }
//-->
</STYLE>
<style fprolloverstyle>
A:hover {color: #FF0000}
</style>
</head>

<body background="Imagenes/fondo_2.jpg" bgcolor="#000000" text="#99CCFF" link="#99CCFF" vlink="#99CCFF" alink="#99CCFF">

<div align="center">
  <center>
  <table border="0" width="100%" background="Imagenes/fondo_3.jpg" height="24">
    <tr>
      <td width="100%" height="20">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center"><b><span style="letter-spacing: 4pt"><font face="Verdana" size="1">-</font><font size="2" face="Verdana">El Sitio Especial</font><font face="Verdana" size="1">-</font></span></b></td>
    </tr>
  </table>
  </center>
</div>
<p style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>

<div align="center">
  <center>
  <table border="1" width="90%" bordercolor="#000000" cellspacing="0" cellpadding="0" background="Imagenes/fondo.jpg">
    <tr>
      <td width="100%" bgcolor="#000099">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0"><b><font size="2" face="Verdana">-
        Registro -</font></b></td>
    </tr>
    <tr>
      <td width="100%">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
      <form name="formulario" method="post" action="<?=$_SERVER[PHP_SELF]?>" onsubmit="return revisar()">
<p align="center">Registro De Nuevo Usuario:</p>
<p align="center"><strong>Nick</strong>:<br>
<input name="nick" type="text" id="nick" size="24"><br>
<b>Contrase&ntilde;a</b>:<br>
<input name="contrasena" type="password" id="contrasena" size="24">
<br>
<b>Confirmar contrase&ntilde;a</b>:<br>
<input name="c_contrasena" type="password" id="c_contrasena" size="24">
<br>
<b>Email:</b><br>
<input name="email" type="text" id="email" size="24"><br>
<br>
<select name="sexo"> <option value="0">Masculino <option value="1">Femenino </select>
<br><br>
<input name="enviar" type="submit" id="enviar" value="Registrar"></p>
</form>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
</td>
    </tr>
  </table>
  </center>
</div>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
<div align="center">
  <center>
  <table border="0" width="100%" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#000000" background="Imagenes/fondo_3.jpg">
    <tr>
      <td width="100%">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center">&copy; 2007 El Sitio Especial </p>
        </td>
    </tr>
  </table>
  </center>
</div>

</body>

</html>
salu2
  #2 (permalink)  
Antiguo 26/02/2007, 07:53
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

hola
eso es porque no cerraste php con ?>
a parte al poner un comentario con #, has comentado toda la linea desde ahi hasta el final

prueba organizar bien ese codigo

exitos!
  #3 (permalink)  
Antiguo 26/02/2007, 07:55
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: Sistema de registro de usuarios

Creo que se te ha salteado un ; por ahi seria mas facil observar el error si señalas la linea 109.
__________________
->Aprender es un proceso que incluye el error..
  #4 (permalink)  
Antiguo 26/02/2007, 08:16
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

aca esta la linea 109 ahi la marque salu2.

Código:
<html><head><? 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()">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@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.' ; } } 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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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>
<script language="Javascript"> 
function disableselect(e){ 
return false 
} 
function reEnable(){ 
return true 
} 
document.onselectstart=new Function ("return false") 
if (window.sidebar){ 
document.onmousedown=disableselect 
document.onclick=reEnable 
} 
</script>
<title>Recomendar</title>
<base target="_self">
<style type="text/css">
<!--
body {  cursor:url(cursor.cur); }
-->
</style>
<SCRIPT language=JavaScript> 
function blockError(){return true;}
window.onerror = blockError;
</SCRIPT>
<STYLE TYPE="text/css">
<!--
 BODY {
  scrollbar-arrow-color:#FFFFFF;
  scrollbar-track-color:#333333;
  scrollbar-shadow-color:#333333;
  scrollbar-face-color:#000000;
  scrollbar-highlight-color:#333333;
  scrollbar-darkshadow-color:#333333;
  scrollbar-3dlight-color:#333333;
 }
//-->
</STYLE>
<style fprolloverstyle>
A:hover {color: #FF0000}
</style>
</head>

<body background="Imagenes/fondo_2.jpg" bgcolor="#000000" text="#99CCFF" link="#99CCFF" vlink="#99CCFF" alink="#99CCFF">

<div align="center">
  <center>
  <table border="0" width="100%" background="Imagenes/fondo_3.jpg" height="24">
    <tr>
      <td width="100%" height="20">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center"><b><span style="letter-spacing: 4pt"><font face="Verdana" size="1">-</font><font size="2" face="Verdana">El Sitio Especial</font><font face="Verdana" size="1">-</font></span></b></td>
    </tr>
  </table>
  </center>
</div>
<p style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>

<div align="center">
  <center>
  <table border="1" width="90%" bordercolor="#000000" cellspacing="0" cellpadding="0" background="Imagenes/fondo.jpg">
    <tr>
      <td width="100%" bgcolor="#000099">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0"><b><font size="2" face="Verdana">-
        Registro -</font></b></td>
    </tr>
    <tr>
      <td width="100%">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
      <form name="formulario" method="post" action="<?=$_SERVER[PHP_SELF]?>" onsubmit="return revisar()">
<p align="center">Registro De Nuevo Usuario:</p>
<p align="center"><strong>Nick</strong>:<br>
<input name="nick" type="text" id="nick" size="24"><br>
<b>Contrase&ntilde;a</b>:<br>
<input name="contrasena" type="password" id="contrasena" size="24">
<br>
<b>Confirmar contrase&ntilde;a</b>:<br>
<input name="c_contrasena" type="password" id="c_contrasena" size="24">
<br>
<b>Email:</b><br>
<input name="email" type="text" id="email" size="24"><br>
<br>
<select name="sexo"> <option value="0">Masculino <option value="1">Femenino </select>
<br><br>
<input name="enviar" type="submit" id="enviar" value="Registrar"></p>
</form>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
</td>
    </tr>
  </table>
  </center>
</div>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
<div align="center">
  <center>
  <table border="0" width="100%" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#000000" background="Imagenes/fondo_3.jpg">
    <tr>
      <td width="100%">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center">&copy; 2007 El Sitio Especial </p>
        </td>
    </tr>
  </table>
  </center>
    </div>
106
107</body>
108
109</html>
  #5 (permalink)  
Antiguo 26/02/2007, 08:47
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: Sistema de registro de usuarios

Cita:
<html><head><? 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()">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@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.' ; } } 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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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>
Como te dijo geq no has cerrado el Tag php
<? ?>
Ademas donde colocas el comentario #Elimina espacios que no .....
todo lo que sigue hasta </script> esta incluido como comentario. Me parece que deberias reordenar un poco el codigo. Saludos
__________________
->Aprender es un proceso que incluye el error..
  #6 (permalink)  
Antiguo 26/02/2007, 09:46
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

Ya borre lo de comentario, una ultima preguntita disculpen mi ignorancia pero como quedaria el codigo con el tag php cerrado ? muchas gracias por la pasiencia.

Código:
<html><head><? if($_POST[enviar]) { require 'config.php' ; function quitar($texto) { $texto = trim($texto) ; $texto = htmlspecialchars($texto) ; $texto = str_replace(chr(160),'',$texto) ;?><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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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>
salu2
  #7 (permalink)  
Antiguo 26/02/2007, 09:54
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

asi parece estar bien
ya lo probaste en tu servidor?

exitos
  #8 (permalink)  
Antiguo 26/02/2007, 09:59
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: Sistema de registro de usuarios

Con este abres <? y lo tienes al comienzo del script al lado del tag <head>

Con este cierras ?> y me parece que va antes de </script>
Saludos
__________________
->Aprender es un proceso que incluye el error..
  #9 (permalink)  
Antiguo 26/02/2007, 10:16
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

Si lo probe en mi servidor pero me sigue dando Parse error: syntax error, unexpected $end... On line 109

salu2
  #10 (permalink)  
Antiguo 26/02/2007, 10:28
Avatar de cala932  
Fecha de Ingreso: septiembre-2006
Ubicación: San Juan-Argentina
Mensajes: 902
Antigüedad: 17 años, 7 meses
Puntos: 9
Re: Sistema de registro de usuarios

Revisa las aperturas y cierres de llave y los punto y coma.
__________________
->Aprender es un proceso que incluye el error..
  #11 (permalink)  
Antiguo 26/02/2007, 10:32
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

mira en primer lugar, al final de tu seccion de php dice

Código:
....a regresar a la página principal.' ; } } else } ?>...
deberia ser } else {

y luego, claro, en algun lugar debes cerrar ese if, por eso el error,,no lo habia visto antes,,

pon esto al final de la pagina,luego de todo el html
Código PHP:
<?PHP ?>
exitos!
  #12 (permalink)  
Antiguo 26/02/2007, 10:53
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

ice como me dijo pero ahora me pone este error
Parse error: syntax error, unexpected $end in on line 110

salu2
  #13 (permalink)  
Antiguo 26/02/2007, 10:58
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

la linea 110 es ahora <?PHP } ?> no?

bueno entonces hay algun otro problema
proba poner las variables $_POST con los valores entre comillas: $_POST['nick'] y asi

si sigue cambia el <?=$_SERVER[PHP_SELF]?> por <?PHP echo $_SERVER['PHP_SELF']: ?>

otra cosa no se me ocurre,,
estas cosas pasan cuando se es desprolijo,,poner todo el codigo en la misma linea no es recomendable,,

bueno
exitos!
  #14 (permalink)  
Antiguo 26/02/2007, 11:03
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

no no hay caso geq sabes de algun otro manual que este bien explicado para la creacion de sistema de registro de usuarios ?

salu2
  #15 (permalink)  
Antiguo 26/02/2007, 11:03
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Sistema de registro de usuarios

Hola...

xq no usas el Autentificator de Cluster... ???
como identificador de usuarios va muy bien,, y ante cualquier duda aqui hay un post abierto sobre el tema...
EDITADO --> disculpa.. confundi registro por auntentificar usuarios en la web... aunque bueno... echale un ojo q = te sirve...

he seguido un poko el tema.. parece ser q el error lo tienes al principio
pruba asi a ver q tal...
Código PHP:
<?
if($_POST[enviar]) { 
    require 
'config.php' 
    function 
quitar($texto) { 
        
$texto trim($texto) ;
         
$texto htmlspecialchars($texto) ; 
         
$texto str_replace(chr(160),'',$texto);
     }
//fin funcion
}//fin IF
?>
o asi... no ser como va...
Código PHP:
<?
if($_POST[enviar]) { require 'config.php' ;} //fin IF 
function quitar($texto) { 
 
$texto trim($texto) ;
 
$texto htmlspecialchars($texto) ; 
 
$texto str_replace(chr(160),'',$texto);
}
//fin funcion
?>
codigo entero:
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 
    } 
//fin funcion
$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()">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@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.' 
    } 
//fin if mysql_result
//fin if post[enviar] 
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier

Última edición por sergi_climent; 26/02/2007 a las 11:17
  #16 (permalink)  
Antiguo 26/02/2007, 11:19
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

sergi_climent muchas gracias esta solucionado ese te pediria un favor esta es otra parte del sistema de registro de usuarios la del login me da este error Parse error: syntax error, unexpected $end on line 1

aca esta el php

Cita:
<? require 'config.php' ; if($_POST[enviar]) { 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 ; } $nick = quitar($_POST[nick]) ; $contrasena = md5(md5(quitar($_POST[contrasena]))) ; $con = mysql_query("select id,contrasena from usuarios where nick='$nick'") ; $datos = mysql_fetch_assoc($con) ; if(mysql_num_rows($con)) { if($datos[contrasena] == $contrasena) { setcookie('uid',$datos[id],time()+604800) ; setcookie('unick',$nick,time()+604800) ; setcookie('ucontrasena',$contrasena,time()+604800) ; header("location: $_SERVER[HTTP_REFERER]") ; } else { echo 'La contraseña es incorrecta. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ; } } else { echo 'El nick no existe. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ; } } ?>
  #17 (permalink)  
Antiguo 26/02/2007, 11:25
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Sistema de registro de usuarios

Hola de nuevo..

prueba asi a ver si va bien...
Código PHP:
<? 
require ("config.php"); //el require siempre asi
 
if($_POST[enviar]) { 
     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 
     }
     
$nick quitar($_POST[nick]) ; 
     
$contrasena md5(md5(quitar($_POST[contrasena]))) ;
     
$con mysql_query("select id,contrasena from usuarios where nick='$nick'") ; 
     
$datos mysql_fetch_assoc($con) ; 
    if(
mysql_num_rows($con)) { 
        if(
$datos[contrasena] == $contrasena) { 
            
setcookie('uid',$datos[id],time()+604800) ; 
            
setcookie('unick',$nick,time()+604800) ; 
            
setcookie('ucontrasena',$contrasena,time()+604800) ; 
            
header("location: $_SERVER[HTTP_REFERER]") ; 
        } else { 
            echo 
'La contraseña es incorrecta. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' 
        } 
    } else { 
        echo 
'El nick no existe. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ;
    }

?>
saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #18 (permalink)  
Antiguo 26/02/2007, 11:31
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

me pone esto

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource on line 13

Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource on line 14

salu2
  #19 (permalink)  
Antiguo 26/02/2007, 11:48
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

me hice una tabla en mi db con la estructura qe teoricamente tiene la tuya y probe todo,,

es esto lo que quieres?
http://www.cqsoft.com.ar/tests/prueba0.php

funciona perfectamente y lo hice solo con tu codigo
aqui esta

Código PHP:
<html><head>
<?
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(*) as 'm' from usuarios where nick='$nick' or email='$email'");
    if(
mysql_result($con,0,"m")) {
        echo 
'El nick ya existe en la base de datos o ya está registrado el email. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ; die();
    } else {
        
$contrasena md5(md5(quitar($_POST["contrasena"])));
        
$sexo quitar($_POST["sexo"]);
        
mysql_query("insert into usuarios (fecha,nick,contrasena,email,sexo,ip) values (NOW(),'$nick','$contrasena','$email','$sexo','$_SERVER[REMOTE_ADDR]')");
        echo 
'Has sido registrad@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.'; die();
    }
} 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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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>
<script language="Javascript"> 
function disableselect(e){ 
return false 

function reEnable(){ 
return true 

document.onselectstart=new Function ("return false") 
if (window.sidebar){ 
document.onmousedown=disableselect 
document.onclick=reEnable 

</script>
<title>Recomendar</title>
<base target="_self">
<style type="text/css">
<!--
body {  cursor:url(cursor.cur); }
-->
</style>
<SCRIPT language=JavaScript> 
function blockError(){return true;}
window.onerror = blockError;
</SCRIPT>
<STYLE TYPE="text/css">
<!--
 BODY {
  scrollbar-arrow-color:#FFFFFF;
  scrollbar-track-color:#333333;
  scrollbar-shadow-color:#333333;
  scrollbar-face-color:#000000;
  scrollbar-highlight-color:#333333;
  scrollbar-darkshadow-color:#333333;
  scrollbar-3dlight-color:#333333;
 }
//-->
</STYLE>
<style fprolloverstyle>
A:hover {color: #FF0000}
</style>
</head>

<body background="Imagenes/fondo_2.jpg" bgcolor="#000000" text="#99CCFF" link="#99CCFF" vlink="#99CCFF" alink="#99CCFF">

<div align="center">
  <center>
  <table border="0" width="100%" background="Imagenes/fondo_3.jpg" height="24">
    <tr>
      <td width="100%" height="20">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center"><b><span style="letter-spacing: 4pt"><font face="Verdana" size="1">-</font><font size="2" face="Verdana">El Sitio Especial</font><font face="Verdana" size="1">-</font></span></b></td>
    </tr>
  </table>
  </center>
</div>
<p style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>

<div align="center">
  <center>
  <table border="1" width="90%" bordercolor="#000000" cellspacing="0" cellpadding="0" background="Imagenes/fondo.jpg">
    <tr>
      <td width="100%" bgcolor="#000099">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0"><b><font size="2" face="Verdana">-
        Registro -</font></b></td>
    </tr>
    <tr>
      <td width="100%">
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
      <form name="formulario" method="post" action="<?=$_SERVER[PHP_SELF]?>" onsubmit="return revisar()">
<p align="center">Registro De Nuevo Usuario:</p>
<p align="center"><strong>Nick</strong>:<br>
<input name="nick" type="text" id="nick" size="24"><br>
<b>Contrase&ntilde;a</b>:<br>
<input name="contrasena" type="password" id="contrasena" size="24">
<br>
<b>Confirmar contrase&ntilde;a</b>:<br>
<input name="c_contrasena" type="password" id="c_contrasena" size="24">
<br>
<b>Email:</b><br>
<input name="email" type="text" id="email" size="24"><br>
<br>
<select name="sexo"> <option value="0">Masculino <option value="1">Femenino </select>
<br><br>
<input name="enviar" type="submit" id="enviar" value="Registrar"></p>
</form>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
</td>
    </tr>
  </table>
  </center>
</div>
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p>
<div align="center">
  <center>
  <table border="0" width="100%" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#000000" background="Imagenes/fondo_3.jpg">
    <tr>
      <td width="100%">
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center">&copy; 2007 El Sitio Especial </p>
        </td>
    </tr>
  </table>
  </center>
</div>

</body>

</html>
<?PHP ?>
eso es exactamente el contenido de prueba0.php (excepto por mis datos de conexion a la db jej)

bueno espero que ahora te funciona

exitoss!
  #20 (permalink)  
Antiguo 26/02/2007, 12:16
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
De acuerdo Re: Sistema de registro de usuarios

Muchas gracias geq por la ayuda y la pasiencia anda barbaro ahora

salu2
  #21 (permalink)  
Antiguo 26/02/2007, 22:43
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

Como hago para que cuando una persona se registre le llegue un email avisandole que se ha registrado ?

salu2

Última edición por dami_ipp; 27/02/2007 a las 00:22
  #22 (permalink)  
Antiguo 27/02/2007, 01:36
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Sistema de registro de usuarios

Hola,

para mandar correos te aconsejo la clase PHPMailer

algun ejemplo:

http://www.programacion.net/php/articulo/phpmailer/

saludos
__________________
"Cada hombre es el hijo de su propio trabajo"
Miguel de Cervantes Saavedra
"La experiencia es algo que no consigues hasta justo depués de necesitarla"
Laurence Olivier
  #23 (permalink)  
Antiguo 27/02/2007, 08:12
Avatar de a83
a83
 
Fecha de Ingreso: noviembre-2005
Ubicación: Santiago de chile
Mensajes: 637
Antigüedad: 18 años, 5 meses
Puntos: 1
Mensaje Re: Sistema de registro de usuarios

esto se supone que es para ingresar los datos de los usuarios al la bace de datos y que estan validados sierto .

ahora como ago para autentificar en el ingreso de estos usuario para que ingrecen al " portal o sitio "
  #24 (permalink)  
Antiguo 27/02/2007, 08:14
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

hola

tambien podes usar simplemente la funcion mail()

sea cual sea la que uses
la instruccion de enviar el mail deberia ir en tu script en esta parte:

Código PHP:
...
} else { 
        
$contrasena md5(md5(quitar($_POST["contrasena"]))); 
        
$sexo quitar($_POST["sexo"]); 
        
mysql_query("insert into usuarios (fecha,nick,contrasena,email,sexo,ip) values (NOW(),'$nick','$contrasena','$email','$sexo','$_SERVER[REMOTE_ADDR]')"); 
        
        
// ENVIAR MAIL AQUI

        
echo 'Has sido registrad@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.'; die(); 
    }
... 
exitos
  #25 (permalink)  
Antiguo 27/02/2007, 08:46
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

Hola geq como quedaria por ejemplo el codigo completo con la funcion mail, es que soy medio novato en esto.

Muchas gracias por la ayuda y la pasiencia

salu2
  #26 (permalink)  
Antiguo 27/02/2007, 09:06
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

jej es un placer, me gusta hacerlo 8D,, y es la forma en la qe me siento comodo mm,probe publicar articulos en mi web,pero me canse y deje de hacerlo, enviar notas a sitios web pero me los rechazaron pq no soy buen redactor y no volvi a intentar =P aca en el foro me gusta mas =D

bueno ya xDDD que me importa diras :$

Usando la funcion mail() quedaria asi:

Código PHP:
<html><head> 
<? 
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(*) as 'm' from usuarios where nick='$nick' or email='$email'"); 
    if(
mysql_result($con,0,"m")) { 
        echo 
'El nick ya existe en la base de datos o ya está registrado el email. Haz click <a href="javascript:history.back()">aquí</a> para regresar.' ; die(); 
    } else { 
        
$contrasena md5(md5(quitar($_POST["contrasena"]))); 
        
$sexo quitar($_POST["sexo"]); 
        
mysql_query("insert into usuarios (fecha,nick,contrasena,email,sexo,ip) values (NOW(),'$nick','$contrasena','$email','$sexo','$_SERVER[REMOTE_ADDR]')"); 
        
mail($email,"Ya estás registrado!","Hola, $nick!\n\nYa estas registrado!\n\nTu nombre de usuario es: $nick\nTu contraseña es: $contrasena\n\nPuedes ingresar mediante el siguiente link: http://www.miweb.com/login\n\nGracias por registrarte!\nExitos","From: <[email protected]>\r\n");
        echo 
'Has sido registrad@. Haz click aquí <a href="index.php">aquí</a> para regresar a la página principal.'; die(); 
    } 
} 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 < 8) { alert('La contraseña debe contener por lo mínimo 8 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> 
<script language="Javascript">  
function disableselect(e){  
return false  
}  
function reEnable(){  
return true  
}  
document.onselectstart=new Function ("return false")  
if (window.sidebar){  
document.onmousedown=disableselect  
document.onclick=reEnable  
}  
</script> 
<title>Recomendar</title> 
<base target="_self"> 
<style type="text/css"> 
<!-- 
body {  cursor:url(cursor.cur); } 
--> 
</style> 
<SCRIPT language=JavaScript>  
function blockError(){return true;} 
window.onerror = blockError; 
</SCRIPT> 
<STYLE TYPE="text/css"> 
<!-- 
 BODY { 
  scrollbar-arrow-color:#FFFFFF; 
  scrollbar-track-color:#333333; 
  scrollbar-shadow-color:#333333; 
  scrollbar-face-color:#000000; 
  scrollbar-highlight-color:#333333; 
  scrollbar-darkshadow-color:#333333; 
  scrollbar-3dlight-color:#333333; 
 } 
//--> 
</STYLE> 
<style fprolloverstyle> 
A:hover {color: #FF0000} 
</style> 
</head> 

<body background="Imagenes/fondo_2.jpg" bgcolor="#000000" text="#99CCFF" link="#99CCFF" vlink="#99CCFF" alink="#99CCFF"> 

<div align="center"> 
  <center> 
  <table border="0" width="100%" background="Imagenes/fondo_3.jpg" height="24"> 
    <tr> 
      <td width="100%" height="20"> 
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center"><b><span style="letter-spacing: 4pt"><font face="Verdana" size="1">-</font><font size="2" face="Verdana">El Sitio Especial</font><font face="Verdana" size="1">-</font></span></b></td> 
    </tr> 
  </table> 
  </center> 
</div> 
<p style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p> 

<div align="center"> 
  <center> 
  <table border="1" width="90%" bordercolor="#000000" cellspacing="0" cellpadding="0" background="Imagenes/fondo.jpg"> 
    <tr> 
      <td width="100%" bgcolor="#000099"> 
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0"><b><font size="2" face="Verdana">- 
        Registro -</font></b></td> 
    </tr> 
    <tr> 
      <td width="100%"> 
        <p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p> 
      <form name="formulario" method="post" action="<?=$_SERVER[PHP_SELF]?>" onsubmit="return revisar()"> 
<p align="center">Registro De Nuevo Usuario:</p> 
<p align="center"><strong>Nick</strong>:<br> 
<input name="nick" type="text" id="nick" size="24"><br> 
<b>Contrase&ntilde;a</b>:<br> 
<input name="contrasena" type="password" id="contrasena" size="24"> 
<br> 
<b>Confirmar contrase&ntilde;a</b>:<br> 
<input name="c_contrasena" type="password" id="c_contrasena" size="24"> 
<br> 
<b>Email:</b><br> 
<input name="email" type="text" id="email" size="24"><br> 
<br> 
<select name="sexo"> <option value="0">Masculino <option value="1">Femenino </select> 
<br><br> 
<input name="enviar" type="submit" id="enviar" value="Registrar"></p> 
</form> 
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p> 
</td> 
    </tr> 
  </table> 
  </center> 
</div> 
<p align="center" style="word-spacing: 0; margin-top: 0; margin-bottom: 0">&nbsp;</p> 
<div align="center"> 
  <center> 
  <table border="0" width="100%" bordercolor="#000000" cellspacing="0" cellpadding="0" bgcolor="#000000" background="Imagenes/fondo_3.jpg"> 
    <tr> 
      <td width="100%"> 
        <p style="word-spacing: 0; margin-top: 0; margin-bottom: 0" align="center">&copy; 2007 El Sitio Especial </p> 
        </td> 
    </tr> 
  </table> 
  </center> 
</div> 

</body> 

</html> 
<?PHP ?>
exitos!
  #27 (permalink)  
Antiguo 27/02/2007, 09:52
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

geq sos un master esta barbaro me re sirvio pero hay un problemita cuando me registre me llego el email con los datos esta todo barbaro menos la contraseña esa no puse yo cuando me registre que sera ?

asi me llego
Tu nombre de usuario es: damian
Tu contraseña es: 8e7209322fb44cc8b21f969cc2b6c7e6

yo habia puesto en la contraseña damian

salu2
  #28 (permalink)  
Antiguo 27/02/2007, 10:01
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

jej ^^UU ese es tu password encriptado

hace asi:
cambia la linea de mail(...) por
Código PHP:
mail($email,"Ya estás registrado!","Hola, $nick!\n\nYa estas registrado!\n\nTu nombre de usuario es: $nick\nTu contraseña es: ".$_POST["contrasena"]."\n\nPuedes ingresar mediante el siguiente link: http://www.miweb.com/login\n\nGracias por registrarte!\nExitos","From: <[email protected]>\r\n"); 
exitos
  #29 (permalink)  
Antiguo 27/02/2007, 10:20
Avatar de dami_ipp  
Fecha de Ingreso: febrero-2007
Mensajes: 13
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: Sistema de registro de usuarios

geq espectacularrr ahora si me llego barbaro todo bien, ahora una preguntita cuando pongo mi nick y mi contraseña i me logeo en la pagina no me figura bienvenido damian, cuando le doy a f5 me pone bienvenido damian pero le tengo que dar a f5 para que se actualice no hay alguna forma para que se actualice sola la pagina ni bien me logueo ?
  #30 (permalink)  
Antiguo 27/02/2007, 10:29
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Sistema de registro de usuarios

me parece que depende de como realices el login

si lo hace un script y redirecciona con header() de regreso al index, no deberia haber problema,,

exitos
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 05:27.