Autor Tema: [Ayuda] ¿Cómo puedo hacer esto?  (Leído 768 veces)

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
[Ayuda] ¿Cómo puedo hacer esto?
« en: 22 de Septiembre de 2011, 21:19:19 pm »
¡Hola!

En el trabajo, me pidieron que hiciera una página web tipo Mall Virtual, ese en el que entras y puedes comprar y vender productos, etcétera. Afortunadamente todo me ha salido excelente, excepto una cosa que me han entrado muchas dudas.

Se trata de la hora de seleccionar la categoría de un producto. Verán, uso sistema de árbol de subcategorías, entonces en teoría lo que se debe guardar es el ID de la última. En resumen, me gustaría crear algo como lo siguiente: http://www.mercadolibre.co.cr/jm/syi4?customKey=MCR6036043&visualID=STD&step=QFC&tce=Y

Como pueden ver, al escoger una categoría se siguen mostrando más, y así sucesivamente hasta llegar a una que no tenga hijos.
Agradecería enormemente cualquier ayuda que me puedan brindar, ya que no tengo NPI de cómo hacer esto :-[

Saludos :)
- Moderador de PHP


Comunidad PHPeros

[Ayuda] ¿Cómo puedo hacer esto?
« en: 22 de Septiembre de 2011, 21:19:19 pm »

Desconectado Siquillote

  • PHPero Master
  • ******
  • Mensajes: 4.229
  • Karma: 179
  • Sexo: Masculino
    • Ver Perfil
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #1 en: 22 de Septiembre de 2011, 22:02:27 pm »

Hola Kevin,

Vemos, segun lo que he llegado a entender es mostrar las categorias siguientes segun donde entres. Es que no me he enterado muy bien, creo que aquí vendria genial un ejemplo gráfico :)

Un saludo,
Siquillote.

#Fdo. Physlet

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #2 en: 23 de Septiembre de 2011, 08:03:42 am »
No, no me refiero a ello. Me refiero al formulario de vender. La verdad no sé explicarlo muy bien, tendrías que registrarte en MercadoLibre y ponerte en el área de vender, para que me entiendas mejor.

Saludos ^^
- Moderador de PHP


Desconectado nmartin021

  • PHPero Avanzado
  • ****
  • Mensajes: 250
  • Karma: 9
    • Ver Perfil
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #3 en: 23 de Septiembre de 2011, 13:29:06 pm »
No te entiendo, ¿quieres hacer que se vean todas las categorías hasta que una no tenga más hijos o quieres que se muestra sólo una?
PD: Lo más probable es que el problema esté en la consulta que estás haciendo :P No se me dan bien los joins (para seleccionar de más de una tabla) pero sí sé sacar (de otro modo) datos de dos tablas con una sóla consulta :P

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #4 en: 23 de Septiembre de 2011, 14:49:30 pm »
La verdad Warlox no estoy captando lo que necesitas y creo que sería buena idea que me ilustraras con unas imagenes o algo así.

No se me dan bien los joins (para seleccionar de más de una tabla) pero sí sé sacar (de otro modo) datos de dos tablas con una sóla consulta :P
Para sacar datos de dos tablas en una sola consulta debes usar joins ya sean tácitos o explícitos.

Desconectado nmartin021

  • PHPero Avanzado
  • ****
  • Mensajes: 250
  • Karma: 9
    • Ver Perfil
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #5 en: 23 de Septiembre de 2011, 19:32:05 pm »
La verdad Warlox no estoy captando lo que necesitas y creo que sería buena idea que me ilustraras con unas imagenes o algo así.
Para sacar datos de dos tablas en una sola consulta debes usar joins ya sean tácitos o explícitos.
Bueno, no sé cómo se llama, pero uso esto:
Código: [Seleccionar]
SELECT c.id AS cid, ca.id AS caid, c.name AS cname,  ca.name AS caname FROM categories AS c, subcategories AS ca WHERE algo

Desconectado Physlet

  • PHPero Experto
  • *****
  • Mensajes: 822
  • Karma: 41
  • Sexo: Masculino
  • Todo es posible con esfuerzo, dedicación e interés
    • Ver Perfil
    • PanamaDev
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #6 en: 23 de Septiembre de 2011, 19:56:00 pm »
Bueno, no sé cómo se llama, pero uso esto:
Código: [Seleccionar]
SELECT c.id AS cid, ca.id AS caid, c.name AS cname,  ca.name AS caname FROM categories AS c, subcategories AS ca WHERE algo
Pero ahí la clave está en el WHERE, que es donde tu relacionas las tablas. Eso es un JOIN.

Desconectado Warlox

  • Moderadores PHP
  • PHPero Master
  • ****
  • Mensajes: 1.278
  • Karma: 77
  • Sexo: Masculino
  • A veces hay que aprender a correr antes de caminar
    • Ver Perfil
    • Página personal
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #7 en: 23 de Septiembre de 2011, 20:04:33 pm »
NOOOOOOOOOOOOOOOO se trata de mostrar las subcategorías, más bien se trata de que al clicar una categoría, se me cree un cuadro con las subcategorías de ésta, y así sucesivamente.

Pero no se preocupen, el problema ya está resuelto.
Saludos ^^
- Moderador de PHP


Desconectado nmartin021

  • PHPero Avanzado
  • ****
  • Mensajes: 250
  • Karma: 9
    • Ver Perfil
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #8 en: 24 de Septiembre de 2011, 01:50:00 am »
NOOOOOOOOOOOOOOOO se trata de mostrar las subcategorías, más bien se trata de que al clicar una categoría, se me cree un cuadro con las subcategorías de ésta, y así sucesivamente.

Pero no se preocupen, el problema ya está resuelto.
Saludos ^^
Jaja yo habia entendido otra cosa. Igual con jQuery es facil, espero que no te hayas complicado mucho la vida con javascript tradicional :P porque jQuery ofrece tantas animaciones, efectos y sobretodo, facilidad de uso. Ya dejo de hablar tan bien de jQuery que parece que le estoy haciendo publicidad ^^

Desconectado alan0994

  • PHPerit@
  • *
  • Mensajes: 3
  • Karma: 0
  • Nuev@ PHPer@
    • Ver Perfil
Re:[Ayuda] ¿Cómo puedo hacer esto?
« Respuesta #9 en: 05 de Octubre de 2011, 07:13:29 am »
con js o jquery se puede realizar eso ;)!  suerte!