Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Una QUERY un poco difícil

Estas en el tema de Una QUERY un poco difícil en el foro de Bases de Datos General en Foros del Web. Hola, estoy haciendo un libro de visitas en PHP con mySQL y lo tengo planteado de la siguiente forma: campos: identificador (nick o nombre) localización ...
  #1 (permalink)  
Antiguo 13/03/2005, 14:15
 
Fecha de Ingreso: agosto-2004
Mensajes: 195
Antigüedad: 19 años, 9 meses
Puntos: 0
Una QUERY un poco difícil

Hola, estoy haciendo un libro de visitas en PHP con mySQL y lo tengo planteado de la siguiente forma:

campos:

identificador (nick o nombre)
localización actual
mensaje
isMember

si eres miembro del sitio y estás autentificado los dos primeros datos los tomo de tu perfil.... si no, debes de escribirlos en el formulario que aparece para firmar....

en las firmas pretendo mostrar la foto en caso de que sea miembro del sitio, pero ahora lo que no sé es hacer una query que lea los records del libro de visita y en caso de que sea usuario busque la dirección de la foto y la localización de la tabla de usuarios, en caso de no ser usuario no muestro la foto.

como lo tengo hecho hasta el momento es agregando los siguientes campos en la tabla del libro de visitas...

pic
location

pero esto hace que la foto y la localización de un usuario del sitio que firme el libro sea siempre la misma,, en caso de que el usuario cambie estos datos en su perfil tengo que mandar a cambiarlos en la tabla del libro de visitas si tiene alguna firma a su nombre y eso no creo que esté bien planteado...

en conclusión deseo una query algo como esta...

$query = "SELECT gbook.*, users.pic, users.location WHERE gbook.nick = users.nick";

la query anterior me deja fuera las firmas de los que no son miembros del sitio, o sea un visitante x que no se ha registrado y me dejó su firma.

espero alguien entienda mi problema y me pueda ayudar...

saludos
leo.
__________________
http://www.qbanitas.com - Las chicas más lindas de Cuba.

http://www.santaclarahostel.com - casas particulares en Santa Clara, la ciudad del Che.
  #2 (permalink)  
Antiguo 13/03/2005, 22:19
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 9 meses
Puntos: 102
... pos no... no entiendo bien...

pero seguro tu solución está en www.mysql-hispano.org ... y cuando digo "seguro" es SEGURO.. así que buscale bien.

La mejor de las suertes!
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #3 (permalink)  
Antiguo 13/03/2005, 22:54
 
Fecha de Ingreso: mayo-2004
Mensajes: 393
Antigüedad: 20 años
Puntos: 0
No se bien si entendí, pero lo que quieres es que te muestra algo si está registrado.
Me parece que con un if podría ser suficiente.
No se, piensalo.

Saludos
  #4 (permalink)  
Antiguo 13/03/2005, 23:27
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 9 meses
Puntos: 102
.. creo el su problema es consultar dos tablas... lo cuál creo tampoco hay problema al hacerlo por separado... hay forma de hacerlo en una sola query... quizá separando las tablas por comas, quizá con la función JOIN(), quizá con UNION()... no sé!, depende de lo que exactamente quiera hacer... lo cuál, de dos, no hemos entendido a la perfección... pero como sea, todas esas funciones que pueden servir están en el link antes mencionado... es un sitio muy bueno y que recomiendo visitar... solo por eso incisto.
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
  #5 (permalink)  
Antiguo 14/03/2005, 10:33
 
Fecha de Ingreso: agosto-2004
Mensajes: 195
Antigüedad: 19 años, 9 meses
Puntos: 0
Bueno ya me respondieron mi duda en la parte de bases de datos... y sí,, era simple, tan solo que no tengo muchos conocimientos de mySQL, simplemente utilizando un JOIN LEFT... o sea.

SELECT gbook.*, users.pic, users.location FROM gbook JOIN LEFT users ON gbook.nick = users.nick

bueno algo como eso....

selecciono todos los elementos de la tabla gbook más los elementos pic y location de la tabla users donde los nicks sean iguales.... esa era mi duda...


saludos
leo.
__________________
http://www.qbanitas.com - Las chicas más lindas de Cuba.

http://www.santaclarahostel.com - casas particulares en Santa Clara, la ciudad del Che.
  #6 (permalink)  
Antiguo 15/03/2005, 12:23
Avatar de jam1138
/** @package Moderador */
 
Fecha de Ingreso: julio-2004
Ubicación: sèveR led onieR lE
Mensajes: 9.368
Antigüedad: 19 años, 9 meses
Puntos: 102
y fue JOIN()... Gracias por aportar tu solución (crontibuyes al foro). La mejor de las suertes
__________________
٩(͡๏̯͡๏)۶
» Cómo hacer preguntas de manera inteligente «

"100 años después, la revolución no es con armas, es intelectual y digital"
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 02:32.