Foros del Web » Programando para Internet » PHP »

Problema con submit de select

Estas en el tema de Problema con submit de select en el foro de PHP en Foros del Web. Hola tengo la siguiente duda..en cuanto a la etiqueta select. -Pues bueno lo que hago en este codigo es recuperar el valor de un producto ...
  #1 (permalink)  
Antiguo 31/01/2012, 23:14
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 12 años, 10 meses
Puntos: 12
Problema con submit de select

Hola tengo la siguiente duda..en cuanto a la etiqueta select.
-Pues bueno lo que hago en este codigo es recuperar el valor de un producto selecionado(nombre,descripcion,,,codigo de categoria)

-Lo que hago es que me cargue el combo. con todos los datos pero seleccionado con el codigo de categoria del producto seleccionado..

-El problema es que esta con submit.. y cada vez que escogo otro valor.. me borra los valores de las variables. recogidas con $_GET.

-Me gustaria saber si existe alguna posibilidad de poder hace todo esto pero Con "JQUERY" osea recibir el "codigo de categoria" y seleccionar el combo. lo demas por defecto. que no haga submit.


<body>
<?php
$producto = array();
//$categorias = array();
$producto= obtenerProducto((int)$_GET['codpro']);


?>
<form method="get" action="Editar.php" id="form1">
<input type="hidden" value="<?php echo (int)$_GET['codpro'];?>" name="hidCodigo">
<table>
<?php
foreach ($producto as $valor){
?>
<tr>
<td>Producto:</td>
<td><input type="text" name="txtProducto" size="50" value="<?php echo $valor['nompro']; ?>"/></td>
</tr>
<tr>
<td>Precio:</td>
<td><input tyep="text" name="txtPrecio" style="width:60px" value="<?php echo $valor['prepro']; ?>"/></td>
</tr>
<tr>
<td>Stock:</td>
<td><input type="text" name="txtStock" style="width:50px" value="<?php echo $valor['stock']; ?>"/></td>
</tr>
<tr>
<td>Categoria:</td>
<td>
<input type="hidden" id="hidCategoria" name="hidCategoria" value="<?php echo $valor['codcat']; ?>" />

<select id="cboCategoria" name="cboCategoria" onchange="submit();">
<?php
$categorias= listarCategorias();
foreach($categorias as $categoria){
if($categoria['codcat']==$valor['codcat']&&!(isset ($_GET['cboCategoria'])))
{
?>
<option value="<?php echo $valor['codcat'];?>" selected><?php echo $valor['nomcat']; ?></option>
<?php
}elseif($categoria['codcat']==@$_GET['cboCategoria']){
?>
<option value="<?php echo $categoria['codcat'];?>" selected><?php echo $categoria['nomcat']; ?></option>
<?php
}else{
?>
<option value="<?php echo $categoria['codcat'];?>" ><?php echo $categoria['nomcat']; ?></option>
<?php
}
}
?>
</select>

<?php

echo "<br>";
echo $valor['codcat'];
?>
</td>

</tr>
<tr>
<td colspan="2">
Descripci&oacute;n<br />
<textarea name="txtDescripcion" style="width: 380px;height: 200px;resize: none;"><?php echo $valor['descripcion']; ?></textarea>
</td>
</tr>
<?php }?>
<tr>
<td>
<input type="submit" value="Modificar" name="cmdModificar" />
</td>
</tr>
</table>
</form>

</body>
  #2 (permalink)  
Antiguo 31/01/2012, 23:48
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Problema con submit de select

Pues de que se puede, se puede pero jQuery no es PHP así que mucho que ver aquí pues no.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 01/02/2012, 00:40
 
Fecha de Ingreso: febrero-2012
Mensajes: 1
Antigüedad: 12 años, 2 meses
Puntos: 1
Sonrisa Respuesta: Problema con submit de select

De la forma que estas haciendo no se puede, ya que lo que hace es reenviar el formulario a Editar.php cada vez que se dispara el evento change en el combo
si quieres que funcione,podrias hacer que el action de tu form sea
Código PHP:
Editar.php?codpro=<?php echo $_GET['cod_pro']; ?>
pero no sería la mejor forma, ya que cada vez que cambies el combo tendrías que enviar el formulario recargando la página lo cual puede resultar molesto.

Lo que podrías hacer es utilizar AJAX para cargar el contenido sin refrescar la pagina o enviar el form

para empezardeberias quitar el método submit() al evento change en el combo quedando así simplemente

Código HTML:
<select id="cboCategoria" name="cboCategoria"> 

y dentro de <head> haces algo como esto:


Código:
<script>

$(document).ready(function(){
 
 $('select[name="cboCategoria"]').change(function(){
   var catID = $(this).val();
  $.get('/ruta/a/archivo.php?catID='+catID, function(result){
 alert(result);
   $(this).html(result);

});
 
});

});

</script>


Tu archivo "ruta/a/archivo.php"

Código PHP:
<?php

$cat_id 
= (int) $_GET['catID'];

$html get_whateveryouwant($cat_id);

echo 
$hmtl;

?>

Espero te ayude, cualquier cosa me lo haces saber
  #4 (permalink)  
Antiguo 01/02/2012, 01:14
Avatar de xpapachox  
Fecha de Ingreso: junio-2011
Mensajes: 77
Antigüedad: 12 años, 10 meses
Puntos: 12
Respuesta: Problema con submit de select

Muy bueno..
Te lo agradesco...


:D

Etiquetas: jquery, select, submit
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 13:28.