Foros del Web » Programando para Internet » PHP »

mostrar categorias y sus sub-categorias

Estas en el tema de mostrar categorias y sus sub-categorias en el foro de PHP en Foros del Web. Buenas, mi problema es que para que el usuario agregue cierta informacion, debe elegir en el proceso a que categoria y sub-categoria pertenece, he hecho ...
  #1 (permalink)  
Antiguo 07/04/2011, 00:53
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Pregunta mostrar categorias y sus sub-categorias

Buenas, mi problema es que para que el usuario agregue cierta informacion, debe elegir en el proceso a que categoria y sub-categoria pertenece, he hecho dos select, uno muestra las categorias, y el otro las sub categorias (estan en dos tablas diferentes) funciona bien (porque yo se cuales pertenecen a cada cual) pero me gustaria que cuando elija la categoria "A" el segundo select muestre solo las sub-categorias que pertenecen a "A" y no las que pertenecen a "B","C" y "D" por ejemplo, aqui les muestro el codigo de los selects.

Esta es la parte que muestra las categorias y sub-categorias:

<!--ini seleccionar categoria-->
<?php
$sentencia = "SELECT * FROM categorias ORDER BY categoria asc ";
$comu = mysql_query($sentencia) or die("Error al tratar de ver categorias");
?>
<tr>
<td>Categoria:</td>
<td><select name="categoria">
<?php while ($ulti = mysql_fetch_object($comu)){ ?>
<option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->categoria . ""; ?></option>
<?php }

?>
</select></td>
</tr>
<!--fin selccionar categoria-->
<!--ini seleccionar SUB-categoria-->
<?php
$sentencia = "SELECT * FROM subcat ORDER BY subcategoria asc ";
$comu = mysql_query($sentencia) or die("Error al tratar de ver subcategorias");
?>
<tr>
<td>Sub Categoria:</td>
<td><select name="subcategoria">
<?php while ($ulti = mysql_fetch_object($comu)){ ?>
<option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->subcategoria . ""; ?></option>
<?php }?>
</select></td>
</tr>
<!--fin seleccionar SUB-categoria-->

espero que puedan ayudarme, gracias.
  #2 (permalink)  
Antiguo 07/04/2011, 01:01
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 12 años, 11 meses
Puntos: 25
Respuesta: mostrar categorias y sus sub-categorias

Tendrias que hacer un WHERE en tu segundo query, para indicar que debe de buscar solo las subcategorias correspondientes a esa categoria, en teoria algo asi:

Código PHP:
Ver original
  1. <!--ini seleccionar categoria-->
  2. <?php
  3. $sentencia = "SELECT * FROM categorias ORDER BY categoria ASC";
  4. $comu = mysql_query($sentencia) or die("Error al tratar de ver categorias");
  5. ?>
  6. <tr>
  7. <td>Categoria:</td>
  8. <td><select name="categoria">
  9. <?php while ($ulti = mysql_fetch_object($comu)){ ?>
  10. <option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->categoria . ""; ?></option>
  11. <?php }
  12.  
  13. ?>
  14. </select></td>
  15. </tr>
  16. <!--fin selccionar categoria-->
  17. <!--ini seleccionar SUB-categoria-->
  18. <?php
  19. $categoria = $_POST['categoria'];
  20. $sentencia = "SELECT * FROM subcat WHERE catid='".$categoria."' ORDER BY subcategoria asc ";
  21. $comu = mysql_query($sentencia) or die("Error al tratar de ver subcategorias");
  22. ?>
  23. <tr>
  24. <td>Sub Categoria:</td>
  25. <td><select name="subcategoria">
  26. <?php while ($ulti = mysql_fetch_object($comu)){ ?>
  27. <option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->subcategoria . ""; ?></option>
  28. <?php }?>
  29. </select></td>
  30. </tr>
  31. <!--fin seleccionar SUB-categoria-->

Obviamente en la tabla de subcategorias, tiene que tener un "enlace" con la tabla de categorias.
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #3 (permalink)  
Antiguo 07/04/2011, 02:00
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Respuesta: mostrar categorias y sus sub-categorias

Hola, gracias por la rapida respuesta, lo probe pero no me funciono, segun tengo entendido para mandar un valor por _POST tiene que ir a otra pagina distinta, y estos dos select estan en la misma , se podra hacer poniendo un boton enviar, que opinas? el "enlace" con la tabla categoria funciona bien, se llama id_cat y toma el valor id de la tabla categoria en la categoria que corresponde
  #4 (permalink)  
Antiguo 07/04/2011, 02:43
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 12 años, 11 meses
Puntos: 25
Respuesta: mostrar categorias y sus sub-categorias

Obviamente no va a funcionarte, tienes que agregar el javascript que hara la funcion de refrescar la pagina en ese mismo momento para que el otro form tome la accion del primero, cabe mencionar que tienes que hacer 2 diferentes forms para cada "selector"
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #5 (permalink)  
Antiguo 07/04/2011, 02:53
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Respuesta: mostrar categorias y sus sub-categorias

Claro, yo queria hacerlo todo en un solo form, pero si no le encuentro la vuelta lo hare con varios, gracias por tus respuesta, saludos.
  #6 (permalink)  
Antiguo 07/04/2011, 06:03
 
Fecha de Ingreso: diciembre-2010
Ubicación: Alicante
Mensajes: 74
Antigüedad: 9 años
Puntos: 3
Respuesta: mostrar categorias y sus sub-categorias

No estoy seguro pero con el post si que puedes llamar a la misma pagina.... xk no?... simplemente comprueba si te pasa valos o no y ya está... Lo de los dos form es por cojones....

Lo digo más que nada xk personalmente para algo tan simple no me gusta meter javascript
  #7 (permalink)  
Antiguo 07/04/2011, 17:02
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Respuesta: mostrar categorias y sus sub-categorias

Cita:
Iniciado por cesarnorte9 Ver Mensaje
No estoy seguro pero con el post si que puedes llamar a la misma pagina.... xk no?... simplemente comprueba si te pasa valos o no y ya está... Lo de los dos form es por cojones....

Lo digo más que nada xk personalmente para algo tan simple no me gusta meter javascript
Claro, pero necesito que pase el valor cuando se selecciona la categoria en el de las categorias o simplemente el usuario deja el valor que se muestra, entonces recien ahi puedo usar ese valor para mostrar las sub-categorias que correspondan, como puedo hacer para conseguir ese valor?
Si lo consigo podre hacer lo que me contesto jessica la primera vez, que opinas?
  #8 (permalink)  
Antiguo 08/04/2011, 16:35
Avatar de JessicaTJ  
Fecha de Ingreso: enero-2007
Ubicación: 127.0.0.1
Mensajes: 472
Antigüedad: 12 años, 11 meses
Puntos: 25
Respuesta: mostrar categorias y sus sub-categorias

Dejame desarrollarte un codigo para que puedas ver como funcionaria, en cuanto lo tenga lo publico ^-^
__________________
٩(͡๏̯͡๏)۶ || ٩(͡๏̯͡๏)۶
  #9 (permalink)  
Antiguo 08/04/2011, 23:31
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Respuesta: mostrar categorias y sus sub-categorias

Cita:
Iniciado por JessicaTJ Ver Mensaje
Dejame desarrollarte un codigo para que puedas ver como funcionaria, en cuanto lo tenga lo publico ^-^
Ok, muchas gracias.
  #10 (permalink)  
Antiguo 11/04/2011, 04:18
 
Fecha de Ingreso: diciembre-2010
Ubicación: Alicante
Mensajes: 74
Antigüedad: 9 años
Puntos: 3
Respuesta: mostrar categorias y sus sub-categorias

Claro tu lo que quieres es que cuando seleccionas una categoria...Si te abra la otra?...
  #11 (permalink)  
Antiguo 11/04/2011, 04:24
 
Fecha de Ingreso: marzo-2010
Ubicación: Barcelona
Mensajes: 657
Antigüedad: 9 años, 8 meses
Puntos: 26
Respuesta: mostrar categorias y sus sub-categorias

No seria mejor utilizar AJAX? Mira este link y me dices si te sirve y si es lo que quieres: http://www.formatoweb.com.ar/ajax/se...pendientes.php
__________________
Siempre fallaras el 100% de los tiros que no te atrevas a lanzar.
El 98% de los adolescentes han fumado, si eres del dichoso 2% que no lo ha hecho, copia y pega esto en tu firma.
  #12 (permalink)  
Antiguo 12/04/2011, 15:12
Avatar de waldragon  
Fecha de Ingreso: mayo-2010
Mensajes: 735
Antigüedad: 9 años, 6 meses
Puntos: 55
Respuesta: mostrar categorias y sus sub-categorias

cesarnorte: Si, cuando selecciono la categoria "vehiculos", en el otro select se vean las sub-categorias "autos" "motos" "bicicletas" etc.
vallu: Es justo lo que necesito, aunque ahora ya lo solucione haciendo los selects en dos pasos, no queda tan bien pero funciona, igual ya lo descargue y lo voy a chequear para ver como funciona, gracias.

esto es lo que hice:
if($paso == 0){
?><div id="centroint">
Selecciona la categoria principal a la que pertenece tu negocio, servicio o sitio web
<form action="agregarnegocio.php?paso=1"method="post">
<table>
<!--ini seleccionar categoria-->
<?php
$sentencia = "SELECT id, categoria FROM categorias ORDER BY categoria asc ";
$comu = mysql_query($sentencia) or die("Error al tratar de ver tus categorias");
?>
<tr>
<td>Categoria:</td>
<td><select name="categoria">
<?php while ($ulti = mysql_fetch_object($comu)){ ?>
<option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->categoria . ""; ?></option>
<?php }

?>
</select></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="comun2" value="Seleccionar"><input type="reset" name="Limpiar" value="LIMPIAR"></td>
</tr>
</table>
</form>
</div><?php }?>
<!--fin selccionar categoria-->

<!--ini seleccionar SUB-categoria-->
<?php if($paso == 1){?>
<div id="centroint">
Selecciona la sub-categoria adecuada, e ingresa los datos de tu publicacion
<form action="agregarnegocio.php?paso=2"method="post">
<table><?php
$categoria = $_POST['categoria'];
//$categoria = "selected";
$sentencia = "SELECT * FROM subcat WHERE id_cat='".$categoria."' ORDER BY subcategoria asc ";
$comu = mysql_query($sentencia) or die("Error al tratar de ver tus subcategorias");
?>
<tr>
<td>Sub Categoria:</td>
<td><select name="subcategoria">
<?php while ($ulti = mysql_fetch_object($comu)){ ?>
<option value="<?php echo"". $ulti->id . ""; ?>"><?php echo"". $ulti->subcategoria . ""; ?></option>
<?php }?>
</select></td>
</tr>
<td><input type="hidden" value=<?php echo"". $categoria . ""; ?> name="categoria" title="INGRESA EL NOMBRE DEL NEGOCIO"></td
<!--fin selccionar SUB-categoria-->
<tr>
<td>Nombre del Negocio:</td>
<td><input type="text" name="nombre" title="INGRESA EL NOMBRE DEL NEGOCIO"></td>
</tr>
<tr>
<td>Descripcion:</td>
<td><textarea rows="10" title="AGREGA TODA LA INFORMACION QUE QUIERAS SOBRE EL NEGOCIO" class="formu" name="descripcion" cols="50"></textarea></td>
</tr>
<tr>
<td>Informacion Extra:</td>
<td><textarea rows="8" title="AGREGA TODA LA INFORMACION QUE QUIERAS SOBRE EL NEGOCIO" class="formu" name="extra" cols="50"></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" name="comun" value="AGREGAR NEGOCIO"><input type="reset" name="Limpiar" value="LIMPIAR"></td>
</tr>

</table>
</form></div><?php }
y luego lo otro, al menos funciona, gracias.

Etiquetas: categorias
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 21:02.