Foros del Web » Programando para Internet » PHP »

Crear registro de usuarios

Estas en el tema de Crear registro de usuarios en el foro de PHP en Foros del Web. Hola buenas estoy quiero crear un registro de usuarios y estoy buscando algun manual tutorial o script ya creado para este proposito. Por favor me ...
  #1 (permalink)  
Antiguo 21/10/2007, 18:25
 
Fecha de Ingreso: octubre-2007
Mensajes: 203
Antigüedad: 16 años, 6 meses
Puntos: 0
Crear registro de usuarios

Hola buenas estoy quiero crear un registro de usuarios y estoy buscando algun manual tutorial o script ya creado para este proposito.

Por favor me pueden facilitar alguno?

Muchas gracias!
  #2 (permalink)  
Antiguo 21/10/2007, 19:55
 
Fecha de Ingreso: octubre-2007
Mensajes: 203
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Crear registro de usuarios

hola buenas despues de buscar mucho he encontrado un tutorial en esta misma web peor me da algunos probelmas que no se como solucionarlos:

Se compone de 3 archivos:


REGISTRAR.php:

<?php
session_start(); // Inicio de sessión

include("conect-bdd.php"); // conexion a la base de datos

function quitar($mensaje) {
$mensaje = str_replace("<","&lt;",$mensaje);
$mensaje = str_replace(">","&gt;",$mensaje);
$mensaje = str_replace("\'","'",$mensaje);
$mensaje = str_replace("\'","&quot;",$mensaje);
$mensaje = str_replace("\\\\'","\;",$mensaje);
return $mensaje;
}

if(trim($_POST["nick"]) != "" && trim($_POST["email"]) != "") {
$sql = "SELECT id FROM usuarios WHERE nick='".quitar($_POST["nick"])."'";
$result = mysql_query($sql);
if($row = mysql_fetch_array($result)) {
echo 'Error, nick escogido por otro usuario <br> <a href="registrar.html?'. SID .'">Registro</a>';
} else {
$sql = "INSERT INTO usuarios (nick,password,nombre,email) VALUES (";
$sql .= "'".quitar($_POST["nick"])."'";
$sql .= ",md5('".quitar($_POST["password"])."')";
$sql .= ",'".quitar($_POST["nombre"])."'";
$sql .= ",'".quitar($_POST["email"])."'";
$sql .= ")";
mysql_query($sql);
echo 'Registro exitoso! <br> <a href="inicio.html?'. SID .'">Index</a>';
}
mysql_free_result($result);
} else {
echo 'Debe llenar como minimo los campos de email y password <br> <a href="registrar.html?'. SID .'">Registro</a>';
}
mysql_close();
?>


INGRESAR.php


<?php
session_start(); // Inicio de sessión

include("conect-bdd.php"); // conexion a la base de datos

$sid = md5(SID);
$loginCorrecto = false;
$i = 1;

function quitar($mensaje) {
$mensaje = str_replace("<","&lt;",$mensaje);
$mensaje = str_replace(">","&gt;",$mensaje);
$mensaje = str_replace("\'","'",$mensaje);
$mensaje = str_replace('\"',"&quot;",$mensaje);
$mensaje = str_replace("\\\\","&#92",$mensaje);
return $mensaje;
}
if(trim($_POST["nick"]) != "" && trim($_POST["password"]) != "") {
$nickN = quitar($_POST["nick"]);
$passN = quitar($_POST["password"]);
$result = mysql_query("SELECT nick, identificador, password FROM usuarios WHERE nick='$nickN'");
$row = mysql_fetch_array($result);
if($row["nick"] == $nickN) {
if($row["password"] == md5($passN)) {
$nickN = quitar($_POST["nick"]);
$passN = quitar($_POST["password"]);
$result = mysql_query("SELECT nick, password FROM usuarios WHERE nick='$nickN'");
$row = mysql_fetch_array($result);
$I = settype($row["identificador"], "double");
if ($I == $i) {
$loginCorrecto = true;
mysql_free_result($result);
}
else {
$loginCorrecto = false;
mysql_free_result($result);
}
if($loginCorrecto) {
echo gettype($loginCorrecto);
?> <SCRIPT LANGUAGE="javascript">location.href ="inicio2.html?<? echo SID ?>";</SCRIPT> <?
}
else {
echo 'El sistema no lo ha identificado, solo los usuarios registrados tienen acceso a este area <br>
<a href="registrar.html?'. SID .'">registrate</a> <br>
<a href="inicio.html?'. SID .'">login</a>';
}
}
else {
echo 'Password incorrecto <br> <a href="inicio.html?">Login</a>';
}
}
else {
echo 'Usuario no existente en la base de datos <br> <a href="inicio.html'. SID .'">Login</a>';
}
}
else {
echo 'Debe especificar un nick y password <br> <a href="inicio.html?">Login</a>';
}
mysql_close();
?>


LOG-OUT.php

//AQUI ESTA logout.php
<?php // Inicio de sessión
session_start();

include("conect-bdd.php")

// Cambiamos de la base de datos el valor aleatorio de la cookie por si acaso fue robada
$sql = "UPDATE usuarios SET
sid = '".md5(rand(0,time()))."',
identificador = '".md5(rand(0,time()))."',
ultima_visita = NOW()
Where
id = "'".$_SESSION['id']."'";
mysql_query($sql) or die (mysql_error());

//Destruimos las cookies.
setcookie("usNick","x",time()-3600);
setcookie("usPass","x",time()-3600);
setcookie("Acepta","x",time()-3600);

// Destruimos la sesión
session_destroy();




Los errores que me dan son los siguientes:

Al ejecutar registrar.php me aparece esto:


Conexión con la base de datos conseguida.
Debe llenar como minimo los campos de email y password
Registro


--> le doy a registro y no me encuentra la url...


Al ejecutar ingresar.php me aparece esto:


Warning: session_start(): Cannot send session cache limiter - headers already sent (output started at /home/www/termop.awardspace.com/ingresar.php:2) in /home/www/termop.awardspace.com/ingresar.php on line 3

Conexión con la base de datos conseguida.
Debe especificar un nick y password
Login

--> le doy a login y no me redirecciona a ningun sitio....


y por ultimo el log-out.php en el que me aparece esto:
Parse error: parse error, unexpected T_CONSTANT_ENCAPSED_STRING in /home/www/termop.awardspace.com/logout.php on line 13

Y tampoco se como solucionarlo :(


Si alguien me pudiera ayudar le estaria eternamente agradecido!

Última edición por B4l4; 21/10/2007 a las 20:02
  #3 (permalink)  
Antiguo 22/10/2007, 05:19
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Crear registro de usuarios

Hola, hay una muy buena clase para el control de usuarios

http://php.cluster-web.com/autentificator/

aki en el foro hay varios post, te dejo uno

http://www.forosdelweb.com/f18/aunte...luster-428447/

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
  #4 (permalink)  
Antiguo 22/10/2007, 08:09
 
Fecha de Ingreso: octubre-2007
Mensajes: 203
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Crear registro de usuarios

Lo se pero dijo cluster, que no recomendaba la descarga del script debido a que tenia un fallo de seguridad... Alguien me puede ayudar con lo que puse antes sobre los errores de ejecucion?
  #5 (permalink)  
Antiguo 22/10/2007, 08:13
 
Fecha de Ingreso: enero-2005
Ubicación: Barcelona
Mensajes: 1.473
Antigüedad: 19 años, 3 meses
Puntos: 10
Re: Crear registro de usuarios

El problema del SQL injection ya se arreglo... o aki en el foro o por algun otro sitio, ya no me acuerdo.

Código PHP:
$user mysql_real_escape_string($_POST['user']); 
me parece q era este el cambio.... disculpa sino es todo lo q se tenia q cambiar

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
  #6 (permalink)  
Antiguo 22/10/2007, 08:54
 
Fecha de Ingreso: octubre-2007
Mensajes: 203
Antigüedad: 16 años, 6 meses
Puntos: 0
Re: Crear registro de usuarios

Gracias Sergi_climent, pero preferiria corregir el codigo que tengo, que mis horas de mirarmelo me ha costado, bsucando errores xDDD.

De todas formas muchas gracias, si me puedes agregar a [email protected], para pedirte el codgi de cluster si no esta activa la descarga te lo agradeceria mucho.

Si alguien me puede ayudar con el codigo que puse mas arriba tambien lo agradeceria, muchas gracias a todos :)
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 10:06.