Comunidad de diseño web y desarrollo en internet online

Comprobar usuario

Citar            
MensajeEscrito el 28 Jun 2006 04:13 pm
Hola, bien pues ahi les va mi problemita, tengo un sitema en el que te registras y te manda un mail de confirmacion, hasta ahi todo bien, pero a la hora de confirmar el registro empezamos mal.

[email protected]&confirmacion=codigo_de_confirmacion

Código :

$connection = @mysql_connect(local,usuario,pass) or die('No sirve la coneccion');
$db = mysql_select_db(nombredeDB, $connection) or die('No sirve la db');

$result = @mysql_db_query("SELECT * FROM `tabla` WHERE `mail` = '$email'");


Hasta ahi todo bien, pero quiero hacer que me de el valor de el codigo de confirmacion para compararlo

Código :

$seguro1=$result['codigoconfirma'];


Y ya haria un update de confirmacion

Código :

if($seguro1==$confirmacion) {
$result=@mysql_db_query("UPDATE `tabla` SET `activo` = '1' WHERE `id`='$id'");
}


PERO ... no puedo obtener el codigo de confirmacion del usuario, no se como sacar ese valor, he tratado de diferentes maneras y me regresa un resultado vacio y no lo puedo evaluar.

Lo siento, es mi primer encuentro con MySQL y no entiendo perfectamente los ejemplos, pero seguire buscando, gracias y espero puedan ayudarme

PD: Ejecuto mi PHP y me dice que no hubo problemas, solo que la base de datos, me la deja igual

Por bryanisimo

664 de clabLevel



Genero:Masculino  

Geek

firefox
Citar            
MensajeEscrito el 28 Jun 2006 04:54 pm
hu? ok, vamos a explicarte un poco detallado eso:

teniendo una tabla asi.
Tabla Usuarios
Campos:
- id
- nombre
- mail
- confirmacion
- nombre_del_perro
- nombre_asilo_de_suegra


Cuando haces esto:

Código :

SELECT * FROM `Usuarios` WHERE `mail` = '$email'"


el *, es el comodin que te permite seleccionar todos los campos del registro, el WHERE establece la codicion que solo seleccionaras los registros que cumpla la codicion de que email sea igual a lo que tenga la variable mail. Pero muy bien puedes hacer esto:

Código :

SELECT nombre, email FROM `Usuarios` WHERE `mail` = '$email'"

por si no necesitas todos los campos, y la consulta se ejecuta mas rapido, y como intuiras solo seleccionaras los campos nombre y email de los registros.

Ahora entendido eso, viene el lado de php

Código :

$result = @mysql_db_query("SELECT * FROM `Usuarios` WHERE `mail` = '$email'");
$registro = mysql_fetch_array($result);
//suponiendo el primer registro es algo asi
$nombre = $registro["nombre"];
$email= $registro["email"];
$perro = $registro["nombre_del_perro"];


tambien puedes utilizar mysql_result, pero ya te dejo como tarea leer sobre mysql_result, mysql_fetch_array y tambien mysql_query en php.net, para que sepas cuando te conviene cada uno

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox
Citar            
MensajeEscrito el 28 Jun 2006 05:32 pm
INFINITISIMASx2^987! Gracias :D

Ya podre seguir con el trabajo ^^

Gracias gracias y gracias ^^

Por bryanisimo

664 de clabLevel



Genero:Masculino  

Geek

firefox
Citar            
MensajeEscrito el 28 Jun 2006 10:40 pm
Ya sirve CASI todo, solo me falla al momento de confirmar el usuario, mando un mail en el cual viene un link de confirmacion, el cual me regresa las variables para dar de alta al usuario, pero no se que sea lo que esta falllando en lo que refiere a MySQL, aqui les dejo el codigo fuente:


$connection = @mysql_connect($hostbd,$userbd,$passbd) or die('Sin Coneccion');
$db = mysql_select_db($nombd, $connection) or die('No se puede conectar a la base de datos');
$result = @mysql_query("SELECT nombre, mail FROM `tabla` WHERE `mail` = '$email'");
while ($row = mysql_fetch_array($result, MYSQL_NUM)) {
$envia_nombre=$row[0];
$envia_mail=$row[1];
}
//ENCRIPT para codigo de confirmacion y checado del mismo .... y acepta el codigo y llegamos es este punto
$result = @mysql_db_query("UPDATE `tabla` SET `sexo` = '2' WHERE ``mail` = '$email'") or die(mysql_error());


la ultima linea NO SIRVE, no manda errores, según parece que lo hace pero a final de cuentas en la tabla no pasa nada, o_O? entonces ya trate todo esto:

$result = mysql_db_query("UPDATE `tabla` SET `sexo` = '2' WHERE ``mail` = '$email'") or die(mysql_error());
Warning: Wrong parameter count for mysql_db_query() in /usr/local/psa/home/vhosts/changolos.com/httpdocs/beta/mequieroregistrar.php on line 21


@mysql_db_query("UPDATE `usr_changolos` SET `sexo` = '2' WHERE `mail` = '$email'") or die(mysql_error());


$result = @mysql_db_query("UPDATE `usr_changolos` SET `sexo` = '2' WHERE `id` =1") or die(mysql_error());


$result = @mysql_db_query('UPDATE `usr_changolos` SET `sexo` = "2" WHERE `id` =1') or die(mysql_error());


$sql ="UPDATE `usr_changolos` SET `sexo` = '2' WHERE `id` =1";
$result = @mysql_db_query($sql, $connection) or die(mysql_error());
Access denied for user 'usuario'@'%' to database 'UPDATE `tabla` SET `sexo` = '2' WHERE `id` =1'


Aqui me dice que no puedo hacer un update, pero si los hago en phpMyAdmin, es por que tengo permiso, o no? en este caso, que debo hacer?, me meti al panel de control en donde creo los usuarios, pero no me da la opcion de editar los permisos

mysql_close($connection);
$connection = @mysql_connect($DBhost,$DBuser,$DBpass) or die('Sin Coneccion');
$db = mysql_select_db($db_name, $connection) or die('No se puede conectar a la base de datos');
$sql ="UPDATE `tabla` SET `sexo` = '2' WHERE `id` =1";
$result = @mysql_db_query($sql, $connection) or die(mysql_error());
Access denied for user 'changolo_usr'@'%' to database 'UPDATE `usr_changolos` SET `sexo` = '2' WHERE `id` =1'


Y ya no se que hacer, bueno espero esto sirva de algo, otra manita de favor, se los agradesco de antemamo ^^

Por bryanisimo

664 de clabLevel



Genero:Masculino  

Geek

firefox
Citar            
MensajeEscrito el 29 Jun 2006 04:21 am
por lo ultimo que veo, el usuario que estas utilizando en los datos de conexion no tiene permiso para ejecutar update, no te puedo decir mas que crees un usuario que pueda ejecutar updates o modificar el que estas usando y permitirle hacer update...

saludos

Por Maikel

BOFH

5575 de clabLevel

22 tutoriales
5 articulos

Genero:Masculino   Team Cristalab

Claber de baja indefinida

firefox

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.