Foros del Web » Programando para Internet » PHP »

Necesito ayuda para poder realizar lo siguiente:

Estas en el tema de Necesito ayuda para poder realizar lo siguiente: en el foro de PHP en Foros del Web. Hola, estoy haciendo un un sistema de registro para una pagina web. Mi duda es la siguiente: Tengo el formulario de registro echo, sube perfectamente ...
  #1 (permalink)  
Antiguo 19/05/2009, 03:47
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 15 años, 9 meses
Puntos: 0
Desacuerdo Necesito ayuda para poder realizar lo siguiente:

Hola, estoy haciendo un un sistema de registro para una pagina web. Mi duda es la siguiente:

Tengo el formulario de registro echo, sube perfectamente a la base de datos, los muestra perfectamente. Pero muestra todos los datos de usuarios registrados. Entonces lo que necesito es que cuando meta el usuario y la contraseña, se muestren los datos de ese usuario, lo se plantear y tal, pero claro, al ser novato no se escribir codigo desde 0, eso es lo malo de no haber acabado todavia el curso .

Como yo lo tengo planteado es, que si mete el telefono tal, muestra los datos de ese telefono, y pongo el telefono porque es lo unico que se puede diferenciar 100% a un usuario de otro.

No se si lo han entendido, si no avisenme, un saludo y gracias!!
  #2 (permalink)  
Antiguo 19/05/2009, 04:16
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Para diferenciar a un usuario de otro, lo más lógico es que uses el nombre/nick del usuario y una contraseña. Esa seria la clave para identificar a cada usuario dentro de tu tabla.

Lo único que tienes que hacer es introducir esos dos datos, y hacer una consulta a tu base de datos mirando que esos datos coincidan; sin entrar en si la contraseña está encriptada o no, es decir, lo mismo que con el teléfono pero en vez de un campo, dos.
  #3 (permalink)  
Antiguo 19/05/2009, 04:28
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 15 años, 9 meses
Puntos: 0
De acuerdo Respuesta: Necesito ayuda para poder realizar lo siguiente:

La duda es que no se como escribirlo de cero, ese es mi gran problema, me podrias escribir el código PHP? o es demasiada molestia? la verdad es que me ayudarias bastante...

Gracias AbdelioR, un saludo!
  #4 (permalink)  
Antiguo 19/05/2009, 04:35
Avatar de AbdelioR  
Fecha de Ingreso: septiembre-2006
Ubicación: Tarragona
Mensajes: 926
Antigüedad: 17 años, 7 meses
Puntos: 8
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Entonces lo primero que debes hacer es buscar un buen manual de inicio a php y empezar por ahí ;)

PhP
  #5 (permalink)  
Antiguo 19/05/2009, 04:39
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años, 1 mes
Puntos: 63
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Hola

Código:
SELECT * FROM tabla WHERE campo = 'valor'
Supongo que tu caso será algo como

Código:
SELECT * FROM usuarios WHERE telefono = $valor_previamente_verificado
Sustituye teléfono por el campo que necesites, clave, nick, o lo que le pidas y verifiques.

Recuerda siempre validar de alguna manera el dato que el usuario ha introducido.

Trata de evitar el uso de *, solicita solo los datos que necesites de la BD, no toda la fila.

Felicidad
__________________
¡ hey, hou, hou, hey !
  #6 (permalink)  
Antiguo 19/05/2009, 05:27
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 15 años, 9 meses
Puntos: 0
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Gracias PatomaS,

Pongo eso, y entonces lo que hago es llamar de la tabla usuarios, el campo telefono, que sera igual al inpunt con name telefono ($telefono), entonces solo poniendo esto solo me saldran los datos referido al usuario con ese telefono ¿no?

lo he cogido o definitivamente soy un negado?
  #7 (permalink)  
Antiguo 19/05/2009, 05:43
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 15 años, 9 meses
Puntos: 0
Desacuerdo Respuesta: Necesito ayuda para poder realizar lo siguiente:

Yo tengo esto al incio:

Código:
<?php
		$link=mysql_connect("***********","*******","******");
		$db=mysql_select_db("*******",$link);
		$sql="select * from usuarios";
		$resultado=mysql_query($sql,$link);
		while($f=mysql_fetch_array($resultado)) {
			$sexo=$f["sexo"];
			$nombre=$f["nombre"];
			$apellidos=$f["apellidos"];
			$contrasena=$f["contrasena"];
			$telefono=$f["telefono"];
			$movil=$f["movil"];
			$fecha=$f["fecha"];
			$nacionalidad=$f["nacionalidad"];
			$residencia=$f["residencia"];
			$figurante=$f["figurante"];
			$profesional=$f["profesional"];
			$ojos=$f["ojos"];
			$pelo=$f["pelo"];
			$tampelo=$f["tampelo"];
			$piel=$f["piel"];
			$altura=$f["altura"];
			$peso=$f["peso"];
			$hobbies=$f["hobbies"];
			$deporte=$f["deporte"];
			$especialidades=$f["especialidades"];
			$imagen=$f["imagen"];
				  
	  ?>
Y despues segun valla necesitando mostrar los datos lo llamo por la variable (<? echo "$ojos" ?>) pero solo quiero que me vuestre los datos segun el telefono o la contraseña indicada, lo que vosotros os apetezca, donde coloco eso que me has dicho xk si lo pongo aqui:


Código:
		$link=mysql_connect("***********","*******","******");
		$db=mysql_select_db("*******",$link);
		$sql="SELECT * FROM usuarios WHERE telefono = $valor_previamente_verificado";
		$resultado=mysql_query($sql,$link);
		while($f=mysql_fetch_array($resultado)) {
Me da error el while:

Código:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/vhost/buscocasting.es/home/html/zonausuario.php on line 57

:S:S Un saludo y me adelanto a darle las gracias :D
  #8 (permalink)  
Antiguo 19/05/2009, 09:32
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años, 1 mes
Puntos: 63
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Hola

Cuando puse $valor_previamente_verificado, me refiero a que uses el número de teléfono/clave que el usuario te ha enviado mediante el formulario que tengas, pero que antes de pegarlo en la consulta directamente lo valides de alguna manera.

Es decir, no hagas esto:
Código:
$sql= "SELECT * FROM tabla WHERE campo = $_GET[$telefono]"
Antes de eso, debes verificar que $_GET['telefono'] es un dato válido, para eso, deberás verificar, por ejemplo, que son números, que son tantos como hayas consiedrado (mínimo y máximo), que no tengan caracteres que no esperes, etc.

Mientras pruebas que tu script funciona, puees poner directamente el valor del $_GET, pero recuerda que la versión final debe tener algún tipo de validación de datos.

Felicidad
__________________
¡ hey, hou, hou, hey !
  #9 (permalink)  
Antiguo 20/05/2009, 01:49
 
Fecha de Ingreso: julio-2008
Mensajes: 84
Antigüedad: 15 años, 9 meses
Puntos: 0
Desacuerdo

Buenass!! Muchas gracias por tu ayuda... pero me sigue sin funcionar.

Código:
		if(isset($_GET['$contra'])){
		$sql= "SELECT * FROM usuarios WHERE contra = '".$_GET['$contra']."'";
Puse esto, ya no me sale el error... pero es no me sale el error ni la mitad de la web xD, no se que ha pasado, porque llevo tanto tiempo inmerso en el codigo que ya no veo error ni nada.

Muchas gracias, y perdon por la molestia.

funciona sin el get:

$sql= "SELECT * FROM usuarios WHERE contra = '$contra'";


asi es como me ha funcionado, esta bien, o deberia de hacer algo mas?

Última edición por GatorV; 20/05/2009 a las 09:33
  #10 (permalink)  
Antiguo 20/05/2009, 03:11
Avatar de PatomaS
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: En alguna otra parte
Mensajes: 4.656
Antigüedad: 20 años, 1 mes
Puntos: 63
Respuesta: Necesito ayuda para poder realizar lo siguiente:

Hola

Si ya te funciona y te has asegurado de revisar los datos que el usuario te envía, posiblemente no tienes nada más que hacer en este respecto..

Felicidad
__________________
¡ hey, hou, hou, hey !
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 19:05.