Foros del Web » Programando para Internet » PHP »

Como hago para que el valor de mi búsqueda se mantenga en el "lista/menu"

Estas en el tema de Como hago para que el valor de mi búsqueda se mantenga en el "lista/menu" en el foro de PHP en Foros del Web. Hola amigos, ayuda por favor :( lo que pasa es que necesito realizar un BUSQUEDA de productos, para eso mi codigo esta asi: Código HTML: ...
  #1 (permalink)  
Antiguo 20/05/2013, 21:31
 
Fecha de Ingreso: mayo-2013
Ubicación: Chile
Mensajes: 1
Antigüedad: 10 años, 10 meses
Puntos: 0
Pregunta Como hago para que el valor de mi búsqueda se mantenga en el "lista/menu"

Hola amigos, ayuda por favor :( lo que pasa es que necesito realizar un BUSQUEDA de productos, para eso mi codigo esta asi:

Código HTML:
<?php
	include("conexiobd.php");
        // realizo la consulta
	$q="select * from producto order by nombre asc";
	$rs=mysql_query($q,$con);

        //al presionar el boton BUSCAR, tomo valor de COD
	if(isset($_POST['buscar']))
	{
		$cod=$_POST['cod']; 
		$q1="select * from producto where(cod_producto='$cod')"; 
		$rs1=mysql_query($q1,$con); 
		
                // recupero valores de los caompos de la BD de acuerdo al COD
		$r1=mysql_fetch_array($rs1);
		
		$cod=$r1['cod_producto'];
		$nom=$r1['nombre'];
		$des=$r1['descripcion'];
		$cat=$r1['categoria'];
		$uni=$r1['unidad'];
	}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Registro de Entradas</title>
<link href="estilo_ingreso.css" rel="stylesheet" type="text/css" />
</head>

<body>

<table width="480" border="2" align="center" cellpadding="0" cellspacing="0" bordercolor="#039" style="border-collapse:collapse">
  <tr>
    <td><form action="" method="post" enctype="multipart/form-data" name="form1" id="form1">
      <table width="100%" border="0" cellspacing="0" cellpadding="5">
        <tr>
          <td colspan="2" align="center" class="titulocentro">REGISTRO DE INGRESO DE PRODUCTOS</td>
          </tr>
         <tr>
          <td class="texto1">CODIGO PRODUCTO:</td>
          <td>

            // AQUI ESTA MI "LISTA/MENU"
            <select name="cod" id="cod">
            <option selected="selected">Seleccione.... </option>
            	<?php 
					while($r=mysql_fetch_array($rs))
					{
				?>
      			<option value="<?php echo $r['cod_producto']; ?>"><?php echo $r['cod_producto']; ?>
                </option>
     			<?php 
					}
				?>	
            </select>
            <input type="submit" name="buscar" id="buscar" value="Enviar" /></td>
        </tr>
        <tr>
          <td class="texto1">NOMBRE PRODUCTO:</td>
          <td><input name="nom" type="text" id="nom" value="<?php echo $nom; ?>" size="48" /></td>
        </tr>
        <tr>   
         <td class="texto1"><label for="textarea"></label>
            <textarea name="textarea" id="textarea" cols="45" rows="5"><?php echo "DESCRIPCION:"." ".$des; ?></textarea></td>
        <tr>
          <td class="texto1">CATEGORIA:</td>
          <td><input type="text" name="cat" id="cat" value="<?php echo $cat; ?>" /></td>
        </tr>
        <tr>
          <td class="texto1">UNIDAD:</td>
          <td><input type="text" name="uni" id="uni" value="<?php echo $uni; ?>" /></td>
        
//CAMPO OCULTO DEL VALOR --> COD
<input type="hidden" name="cod_prod" id="cod_prod" value="<?php echo $cod; ?>" /></td>
          </tr>
      </table>
    </form></td>
  </tr>
</table>

</body>
</html> 
Como se ve en mi codigo, en la parte de CODIGO: (seguido de una LISTA/MENU) Botno: "BUSCAR", luego de presionar el BOTON en los campos se muestran correctamente todos los datos =)

PERO EL PROBLEMA ES: que cuando selecciono un código de la lista y presiono el botón "BUSCAR" me muestra sus datos correctamente, pero el detalle esta en que en mi LISTA/MENU se pierde el VALOR que eh seleccionado ese es el problema, como hago para que no se pierda ese valor???

AYUDA POR FAVOR no se que le puedo aumentar al codigo, o de que forma hago una busqueda ayuda porfa!!
  #2 (permalink)  
Antiguo 21/05/2013, 01:34
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 13 años, 7 meses
Puntos: 331
Respuesta: Como hago para que el valor de mi búsqueda se mantenga en el "lista/menu"

El id o lo que sea que envias por $_POST para hacer la búsqueda debe leerse nuevamente al crear el elemento select. Este es el valor que se debe mostrar como seleccionado. Consulta cualquier tutorial de formularios o cualquier otro post en este mismo foro. Salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 21/05/2013, 01:40
Avatar de bookmaster  
Fecha de Ingreso: febrero-2002
Ubicación: Toledo
Mensajes: 976
Antigüedad: 22 años, 2 meses
Puntos: 67
Respuesta: Como hago para que el valor de mi búsqueda se mantenga en el "lista/menu"

Agrégale a este línea:
Código PHP:
<option value="<?php echo $r['cod_producto']; ?>"><?php echo $r['cod_producto']; ?>
Lo siguiente:
Código PHP:
<?php if(isset($_POST['cod']) &&  $_POST['cod'] == $r['cod_producto']) echo ' selected';?>
Quedándose así:
Código PHP:
<option value="<?php echo $r['cod_producto']; ?><?php if(isset($_POST['cod']) &&  $_POST['cod'] == $r['cod_producto']) echo ' selected';?>><?php echo $r['cod_producto']; ?>
Y en esta linea:
Código HTML:
<option selected="selected">Seleccione.... </option> 
Quitale el selected="selected"


Y esto:
Código HTML:
 <?php 
					while($r=mysql_fetch_array($rs))
					{
				?>
      			<option value="<?php echo $r['cod_producto']; ?>"><?php echo $r['cod_producto']; ?>
                </option>
     			<?php 
					}
				?> 
Lo dejaría asi:
Código PHP:
<?php 
while($r=mysql_fetch_array($rs)){
    echo 
'<option value="'.$r['cod_producto'].'"'; if(isset($_POST['cod']) &&  $_POST['cod'] == $r['cod_producto']) echo 'selected'; echo '>'.$r['cod_producto'].'</option>';
}
?>
__________________
Decir si te a funcionado la respuesta es ¡GRATIS!. Por favor indicarlo.
http://www.lohacemosweb.net
http://tutoriales.lohacemosweb.net

Última edición por bookmaster; 21/05/2013 a las 01:46

Etiquetas: php+bd+mysql
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 20:19.