Foros del Web » Programando para Internet » PHP »

como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Estas en el tema de como hacer una busqueda en 1 tabla orientada solo a un ID especifico en el foro de PHP en Foros del Web. Saludos, lo que yo quisiera es que me mostrara solo el registro de mi b/d orientada al ID de usuario en el perfil k estoy. ...
  #1 (permalink)  
Antiguo 05/10/2012, 15:18
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Pregunta como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Saludos, lo que yo quisiera es que me mostrara solo el registro de mi b/d orientada al ID de usuario en el perfil k estoy.

O sea lo que quisiera es que los usuarios quieran ver el perfil completo de un usuario en especifico cuando dan click sobre su foto y nombre como cuando queremos ver un perfil de alguien en match.com (dando un ejemplo) o cuando el usuario quiera ver su perfil completo. todo basado en el id que cada usuario tiene mi tabla.

Tengo el sigiente codigo para hacer una consulta y mostrarla pero me muestra todos los registros de la tabla, quisiera basarme en este codigo y modificarlo:

Código PHP:

 <?php

mysql_connect
("localhost","root","");
mysql_select_db("datos");
    
    
$re=mysql_query('SELECT * FROM datos1') ;  
    while(
$f=mysql_fetch_array($re)) {
        echo 
$f['usuario'].'<br>';
        echo 
$f['soy'].'<br>';
        echo 
$f['encabezado_text'].'<br>';
        echo 
'<img src=" '.$f['foto1'].' " width="100" height="100"/>';
        }
  
    
?>
Viendo varios tutoriales lo arregle algo asi como:

Código PHP:
$re=mysql_query("SELECT * FROM datos1 WHERE id='$usuario'") ; 
Soy algo novato, no se como podria terminarlo, y no se si esta bien , ayuda por favor.
  #2 (permalink)  
Antiguo 05/10/2012, 15:25
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Hola,

si tienes el ID, el query que hiciste te deberia de funcionar.

Código PHP:
Ver original
  1. $sql = mysql_query("SELECT id FROM Tabla WHERE id='".$variable."'");
  2. if(mysql_num_rows($sql) != 0) {
  3.      $id = mysql_fetch_assoc($sql);
  4.      echo $id['id'];
  5. }

Saludos!!!
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #3 (permalink)  
Antiguo 05/10/2012, 15:58
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

me sale el sigiente error:

Notice: Undefined variable: usuario in C:\EasyPHP-12.0\www\prueba\ver_perfil.php on line 20

que hay que pasar una variable????
  #4 (permalink)  
Antiguo 05/10/2012, 16:05
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Cita:
Iniciado por gabrielcorr4 Ver Mensaje
me sale el sigiente error:

Notice: Undefined variable: usuario in C:\EasyPHP-12.0\www\prueba\ver_perfil.php on line 20

que hay que pasar una variable????

Claro.

Si estas haciendo un WHERE con una $variable ($usuario) deberias de haber declarado dicha variable con algun parametro a buscar.

Si no te sabes el parametro deberias de llamar a todos los id y ponerlos en un array (mysql_fetch_array) y comprar con algun ID que tengas.

Como sabes que ID llamar?, o lo estas haciendo sin saber que id buscas?
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #5 (permalink)  
Antiguo 05/10/2012, 16:31
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Cita:
Como sabes que ID llamar?, o lo estas haciendo sin saber que id buscas?
lo estoy haciendo asi , pero no es lo que busco:

Cita:
<?php

$id= 1;

mysql_connect("localhost","root","");
mysql_select_db("datos");


$re=mysql_query("SELECT * FROM datos1 WHERE id='".$id."'") ;
if(mysql_num_rows($re) != 0) {
$id = mysql_fetch_assoc($re);
echo $id['id'];
}

?>
Cita:
O sea lo que quisiera es que los usuarios quieran ver el perfil completo de un usuario en especifico cuando dan click sobre su foto y nombre como cuando queremos ver un perfil "completo" de alguien en match.com (dando un ejemplo)
  #6 (permalink)  
Antiguo 05/10/2012, 16:40
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Perfecto, entonces yo te aconsejo lo siguiente:

tienes:
Código PHP:
Ver original
  1. $id= 1;
  2.  
  3. mysql_connect("localhost","root","");
  4. mysql_select_db("datos");
  5.  
  6.  
  7. $re=mysql_query("SELECT * FROM datos1 WHERE id='".$id."'") ;
  8. if(mysql_num_rows($re) != 0) {
  9. $id = mysql_fetch_assoc($re);
  10. echo $id['id'];
  11. }

Yo te propongo esto:
Código PHP:
Ver original
  1. $id= 1;
  2.  
  3. mysql_connect("localhost","root","");
  4. mysql_select_db("datos");
  5.  
  6.  
  7. $sql=mysql_query("SELECT * FROM datos1 WHERE id='".$id."'") ;
  8. if(mysql_num_rows($sql) != 0){
  9. $rows = mysql_fetch_array($sql);
  10. echo 'Nombre: '.$rows['nombre'].'<br />';
  11. echo 'Apellido: '.$rows['apellido'].'<br />';
  12. echo 'Edad: '.$rows['edad'];
  13. }

Me entediste la idea?

tu usaste -> mysql_fetch_assoc el cual asocia un elemento y te devuelve su valor
yo use -> mysql_fetch_array el cual me pone los elementos en un array para luego solo llamarlos dentro del ['campo_tabla']

Saludos!!!
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #7 (permalink)  
Antiguo 05/10/2012, 17:08
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Gracias de antemano por toda la ayuda desinteresada, si entendi los conceptos y el ultimo esta bien para mostrar todos los datos del usuario con un array, pero quiza lo que no me entiendes es:

Cita:
O sea lo que quisiera es que los usuarios puedan ver el perfil "completo" de un usuario en especifico(el que ellos les guste) al dar click sobre su foto y/o nombre de usuario de un listado de usuarios registrados en la b/d.... como en match.com, hi5.com, por decir un ejemplo. como cuando vemos el listado de perfiles y queremos ver uno en particular .... me entiendes?.
No se si ese:$id= 1; ese numero 1, se pueda cambiar o asociar con esa foto y/o nombre de usuario en particular y su ID correspondienre en la b/d para que salga "el respectivo perfil" que queremos ver?.
  #8 (permalink)  
Antiguo 05/10/2012, 17:16
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Cita:
Iniciado por gabrielcorr4 Ver Mensaje
Gracias de antemano por toda la ayuda desinteresada, si entendi los conceptos y el ultimo esta bien para mostrar todos los datos del usuario con un array, pero quiza lo que no me entiendes es:



No se si ese:$id= 1; ese numero 1, se pueda cambiar o asociar con esa foto y/o nombre de usuario en particular y su ID correspondienre en la b/d para que salga "el respectivo perfil" que queremos ver?.

Ayuda, no es tan desinteresada, si yo ayudo, a lo mejor otros aprender, or ende mi interes es que todos nos ayudemos y aprendamos de todos.

Claro que puede ser dinamico. lo unico que necesitas es asociar la imagen con el ID de la persona.

Para eso, deberia saber como tienes la tabla de BD, es relacional? si lo es, usa JOIN o INNER JOIN dentro de la misma consulta y si no, simplemente declara en el link la variable id (por get lo haria yo)

como sacas las fotos? supongo que usas un while (loop) al finalizar el query select

Saludos!!!
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #9 (permalink)  
Antiguo 05/10/2012, 17:33
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Nooo. desinteresada es porque no pides nada economico ni nada asi (me entiendes y tu no la has pedido), si es pedir aprender y ayudar pues claro para eso estamos.

Bueno:

MI B/D no es relacional, todos los datos de un usuario estan en un solo registro para no hacerme lios.

asi muestro yo todos los datos de todos los usuarios de mi b/d. es el primer codigo php que te puse al comienzo:

Cita:
<?php

mysql_connect("localhost","root","");
mysql_select_db("datos");

$re=mysql_query('SELECT * FROM datos1') ;
while($f=mysql_fetch_array($re)) {
echo $f['usuario'].'<br>';
echo $f['soy'].'<br>';
echo $f['encabezado_text'].'<br>';
echo '<img src=" '.$f['foto1'].' " width="100" height="100"/>';
}

?>
Me podrias explicar como declaro en el link la variable id por GET por favor?. se lo agradeceria.
  #10 (permalink)  
Antiguo 05/10/2012, 17:37
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Cita:
Iniciado por gabrielcorr4 Ver Mensaje
Nooo. desinteresada es porque no pides nada economico ni nada asi (me entiendes y tu no la has pedido), si es pedir aprender y ayudar pues claro para eso estamos.

Bueno:

MI B/D no es relacional, todos los datos de un usuario estan en un solo registro para no hacerme lios.

asi muestro yo todos los datos de todos los usuarios de mi b/d. es el primer codigo php que te puse al comienzo:



Me podrias explicar como declaro en el link la variable id por GET por favor?. se lo agradeceria.

Solo pon el link asi:

Código PHP:
echo '<a href="pagina.php?id='.$f['id'].'" title="blablabla"><img src=" '.$f['foto1'].' " width="100" height="100"/></a>'
Avisame si te funciona
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #11 (permalink)  
Antiguo 05/10/2012, 17:48
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

me sale:
Cita:
Parse error: syntax error, unexpected 'id' (T_STRING), expecting ',' or ';' in C:\EasyPHP-12.0\www\prueba\ver_perfil.php on line 25
o sea en el la linea del codigo k se cambio. creo k ese id va en comillas dobles

pagina.php la cambie por ver_perfil.php, en los 2 casos me da ese mismo error.
  #12 (permalink)  
Antiguo 05/10/2012, 17:57
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

no copie y pegues, escribelo, a lo mejor hay algo escondido.

ver_perfil.php?id='.$f['id'].'"
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #13 (permalink)  
Antiguo 05/10/2012, 18:07
 
Fecha de Ingreso: octubre-2010
Ubicación: Guayaquil
Mensajes: 195
Antigüedad: 13 años, 6 meses
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

lo escribi, era la variable 'id' debe ir con comillas dobles, ya no hay problema de sintaxis
Cita:
echo '<a href="ver_perfil.php?id=.$f["id"]." title="blablabla"><img src=" '.$f['foto1'].' " width="100" height="100"/></a>';
de todas formas me sigue mostrando todos los datos de todos los usuarios, como al comienzo.

BuEno ya creo k cojiste la idea como identifico la foto o el nombre de usuario por SU ID.
  #14 (permalink)  
Antiguo 05/10/2012, 18:33
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Cita:
Iniciado por gabrielcorr4 Ver Mensaje
de todas formas me sigue mostrando todos los datos de todos los usuarios, como al comienzo.
el inconveniente es que volviste para atras, no estas declarando el WHERE en el select.
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar
  #15 (permalink)  
Antiguo 05/10/2012, 19:57
 
Fecha de Ingreso: abril-2012
Mensajes: 124
Antigüedad: 12 años
Puntos: 3
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Quizá sea necesario aclarar alguna cosa:

En un archivo hay la linea que muestra el link
echo '<a href="ver_perfil.php?id=.$f["id"]." title="blablabla"><img src=" '.$f['foto1'].' " width="100" height="100"/></a>';

Cuando se haga clic en el link este irá a la página ver_perfil.php?id=loquesea

En esta página podrás usar el valor de la variable id así:
$id = $_POST['id'];
para inicializar el valor de tu variable $id y usarla en la consulta de la base de datos
$sql=mysql_query("SELECT * FROM datos1 WHERE id='".$id."'") ;
para ver sólo el registro que cumpla la condición id==$id
  #16 (permalink)  
Antiguo 06/10/2012, 12:18
Avatar de function  
Fecha de Ingreso: abril-2010
Mensajes: 278
Antigüedad: 14 años
Puntos: 13
Respuesta: como hacer una busqueda en 1 tabla orientada solo a un ID especifico

Si envias los datos en un link:

ver_perfil.php?id=loquesea

se llama metodo get, por ende para recoger dichas variables desde la url debes usar $_GET['id'] no POST, ya que no lo estas haciendo con metodo post.
__________________
~# echo Hemos logrado la independencia, pero no la libertad >> SimonBolivar

Etiquetas: especifico, mysql, orientada, registro, sql, tabla, busquedas, usuarios
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 14:11.