Foros del Web » Programando para Internet » PHP »

Mostrar precio en textbox al seleccionar opcion de un select

Estas en el tema de Mostrar precio en textbox al seleccionar opcion de un select en el foro de PHP en Foros del Web. Hola a todos: Tengo el siguiente select: Código PHP: $rs  =  mysql_query ( "SELECT * FROM cotizacion WHERE categoria='atracciones'" );       if ( $row  =  mysql_fetch_array ( $rs )){       echo  '<select name= "atracciones">' ; ...
  #1 (permalink)  
Antiguo 21/04/2011, 15:39
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Información Mostrar precio en textbox al seleccionar opcion de un select

Hola a todos:

Tengo el siguiente select:

Código PHP:
$rs mysql_query("SELECT * FROM cotizacion WHERE categoria='atracciones'");
      if (
$row mysql_fetch_array($rs)){ 
     echo 
'<select name= "atracciones">';
     do {
     echo 
'<option value= "'.$row["producto"].'">'.$row["producto"].'</option>';
     } while (
$row mysql_fetch_array($rs)); 
            echo 
'</select>';
     } 
alli me muestra los productos que tengo en la bd respecto a la categoria atracciones. Lo que quiero es que cuando se seleccione algún producto, el precio asociado a este producto se muestre en un textbox y no se como hacerlo.

Por favor necesito sus orientaciones.

Gracias
__________________
Caminando con el corazón partío
  #2 (permalink)  
Antiguo 21/04/2011, 16:21
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

Debes usar javascript y programar el evento onChange del select para pasarle el valor al textbox, asegúrate de usar la propiedad ID en cada elemento (select, textbox, etc)
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #3 (permalink)  
Antiguo 21/04/2011, 16:29
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

no entiendo porque el valor que tiene el select es el de el producto y yo necesito el precio segun ese producto seleccionado. Tendria que consultar a la BD si el producto es tal el precio es tal y meterlo en el textbox que es lo que no se como hacer.

???
__________________
Caminando con el corazón partío
  #4 (permalink)  
Antiguo 21/04/2011, 16:34
Avatar de jcxnet  
Fecha de Ingreso: octubre-2005
Ubicación: Perú
Mensajes: 784
Antigüedad: 18 años, 6 meses
Puntos: 56
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

entonces debes usar ajax y hacer una página que solo devuelva el precio del id del producto que le envíes, siempre programado con el evento onChange del select
__________________
►I'm a devil on the run ♂
Jcxnet.com
*Keep It Simple **
  #5 (permalink)  
Antiguo 21/04/2011, 16:39
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

Gracias por tus respuestas jcxnet pero de verdad que no tengo idea de como hacerlo. Me pasee por google buscando varias formas y por ello decidí preguntar aca. Lo que necesito es algo palpable para poder desarrollarlo.

Me imagino que tengo que decir algo como que if producto = $row["producto"] traerme precio al textbox pero de las formas que lo intenté no me da. Lo hice asi

Código PHP:
Ver original
  1. $result = mysql_query("SELECT * FROM cotizacion WHERE producto='$producto' and categoria='$categoria' ");
  2.     if ($row = mysql_fetch_array($result))
  3.       {
  4.       echo'<input name=\"precio_atracc\" type=\"text\" size=\"10\" value="'.$row["precio"].'" readonly=\"readonly\"/>';
  5.           }

ya se que esta super malo pero traté de hacer algo. lo que no entiendo es como agarro lo que seleccionó en el select y se lo paso a la consulta para que me de el precio.

Por favor me pueden explicar esto

Gracias
__________________
Caminando con el corazón partío
  #6 (permalink)  
Antiguo 21/04/2011, 18:44
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

como hago para guardar el valor seleccionado en una variable que me permita preguntar a la tabla en la base de datos el precio que corresponde. ???
__________________
Caminando con el corazón partío
  #7 (permalink)  
Antiguo 22/04/2011, 10:47
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

Hola Kimmy eso obligatoriamente tienes que hacerlo con ajax, por que haras una petición al servidor y cargar el dato en el text box, en este caso el precio del producto. Bueno para ayudarte mejor dime como tienes estructurado tus tablas para poder ayudarte mejor.

Saludos.
  #8 (permalink)  
Antiguo 22/04/2011, 11:13
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

Hola te hize un pequeño ejemplo de lo que necesitas, estoy usando tres archivos de la siguiente forma:

index.php
consulta.php y
js/ajax.js

como vez vamos a usar ajax para lo que necesitas.

el ajax.js

Código PHP:
function objetoAjax(){
    var 
xmlhttp=false;
    try{
        
xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");
    }catch (
e){
        try{
            
xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");
        }catch (
E){
            
xmlhttp false;
        }
    }
    
    if (!
xmlhttp && typeof XMLHttpRequest!='undefined'){
        
xmlhttp = new XMLHttpRequest();
    }
    return 
xmlhttp;
}

function 
cargaprecio(){
    
divResultado  document.getElementById('principal');//div donde se cargara el resultado
    
atracciones document.getElementById('atracciones').value;//valor del select seleccionado
    
ajax objetoAjax();
    
ajax.open("POST""consulta.php"true);
    
    
ajax.onreadystatechange = function(){
        if (
ajax.readyState==4){
            
divResultado.innerHTML ajax.responseText
        
}
    }
    
ajax.setRequestHeader("Content-Type","application/x-www-form-urlencoded");
    
ajax.send("atracciones="+atracciones)


el index.php

Código PHP:
<html>
<
head>
<
title>Prueba Ajax</title>
<
script type="text/javascript" src="js/ajax.js"></script>
</head>
<body>
<div>
  <form name="form1" method="post" action="">
    <label>
    <!--realiazas tu consulta para cargar los productos segun la categoria-->
    <select name="atracciones" id="atracciones" onChange="cargaprecio();">
        <option value="0">Seleccione</option>
        <option value="1">Producto 1</option>
        <option value="2">Producto 2</option>
        <option value="3">Producto 3</option>
      </select>
    </label>
 </form>
</div>
<div id="principal">Precio: </div>
</body>
</html> 

y por ultimo el consulta.php

Código PHP:
<?
//recibes la variable en este caso atracciones por que es asi como se llama tu select 
$atracciones=$_REQUEST['atracciones'];
//haces la respectiva consulta a la base de datos y lo muestras en el text box
echo'Precio: <input name=\"precio_atracc\" type=\"text\" size=\"10\" value="100" readonly=\"readonly\"/>';
?>
cualquier consulta no dudes en hacerlo.


Atte.

Gino FL
  #9 (permalink)  
Antiguo 27/04/2011, 20:36
Avatar de kimmy  
Fecha de Ingreso: julio-2008
Mensajes: 841
Antigüedad: 15 años, 9 meses
Puntos: 15
Respuesta: Mostrar precio en textbox al seleccionar opcion de un select

Mil Gracias Gino
__________________
Caminando con el corazón partío

Etiquetas: opcion, precio, seleccionar, select, textbox
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 10:27.