Foros del Web » Programando para Internet » PHP »

Funcion en un select

Estas en el tema de Funcion en un select en el foro de PHP en Foros del Web. Buenas, tengo una duda y quería que me ayudaseis a resolverla. Tengo una función que es una consulta básica y quería llamar a esa función ...
  #1 (permalink)  
Antiguo 29/10/2013, 04:40
 
Fecha de Ingreso: octubre-2013
Ubicación: Asturias
Mensajes: 52
Antigüedad: 10 años, 6 meses
Puntos: 1
Funcion en un select

Buenas, tengo una duda y quería que me ayudaseis a resolverla. Tengo una función que es una consulta básica y quería llamar a esa función pero dentro del select y no se como

Código HTML:
Ver original
  1. <select name="referencia_proveedor">
  2.             <option
  3.            <?php
  4.            leer_proveedores();
  5.            ?>>
  6.             </option>
  7.            
  8.            
  9.             </select>

Y esta es la función:
Código PHP:
Ver original
  1. function leer_proveedores(){
  2.     $enlace=conectar_bd();
  3.     $consulta='SELECT * FROM proveedores';                  $resultado=mysql_query($consulta,$enlace);  
  4.     mysql_close($enlace);  
  5.     return $resultado;  
  6.    
  7. }
  #2 (permalink)  
Antiguo 29/10/2013, 05:04
Avatar de guardarmicorreo  
Fecha de Ingreso: noviembre-2012
Ubicación: Córdoba
Mensajes: 1.153
Antigüedad: 11 años, 5 meses
Puntos: 84
Respuesta: Funcion en un select

lo que intentas no se puede hacer así.

si te fijas en cómo funcionan los option del select verás que:

1) deben ir dentro de un form.

2) los option tienen atributos: value (es el más importante), etc.

3) ¿si la etiqueta option tiene atributos y un texto que se muestra al usuario dónde quedaría lugar para tu función? en ninguna parte.

por lo tanto lo que debes hacer es construir un form (method get o post y un action), dentro un select, dentro de ese select (con un nombre) el o los option y cada option con un value y un texto que el usuario verá para identificarlo.

luego relacionas cada value con una acción. ejemplo:

Código PHP:
Ver original
  1. if(isset ($_POST['nombre_del_select']) AND $_POST['nombre_del_select']==2)
  2. //2 es el valor de un option
  3. {
  4.      $proveedores = leer_proveedores();
  5. }
__________________
Ayúdame a hacerlo por mi mismo.
  #3 (permalink)  
Antiguo 29/10/2013, 05:18
 
Fecha de Ingreso: octubre-2013
Ubicación: Asturias
Mensajes: 52
Antigüedad: 10 años, 6 meses
Puntos: 1
Respuesta: Funcion en un select

Código HTML:
Ver original
  1.  
  2.     <head>
  3.         <title>Formulario para realizar nuevo pedido</title>
  4.     </head>
  5.    
  6.     <body>
  7.         <form name="form_pedidos" method="post">
  8.         <fieldset>
  9.         <legend>Nuevo Pedido</legend>
  10.          
  11.             <p>Referencia del pedido : <input type="text" name="referencia_pedido" /><br></p>
  12.             <p>Fecha del pedido : <input type="date" name="fecha " /><br></p>
  13.             <p>Proveedor
  14.             <select name="referencia_proveedor">
  15.             <option
  16.            <?php
  17.            leer_proveedores();
  18.            ?>>
  19.             </option>
  20.            
  21.            
  22.             </select>
  23.            
  24.             <input type="submit" value="Registrar" />
  25.        
  26.         </fieldset>
  27.        
  28.         </form>
  29.  
  30.  
  31.  
  32.     </body>
  33.  
  34. </html>
[
Código PHP:
Ver original
  1. <?php  session_start();
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  include ('funciones.php');
  8.  
  9. if(!empty ($_POST['referecia_pedido']) && !empty ($_POST['fecha']) && !empty ($_POST['referencia_proveedor'])){  
  10.  
  11.  
  12.  
  13. $_SESSION['referencia_pedido']=$_POST['referecia_pedido'];
  14. $_SESSION['fecha']=$_POST['fecha']=$_POST['fecha'];
  15. $_SESSION['referencia_proveedor']=$_POST['referencia_proveedor'];
  16.  
  17.  
  18. echo 'llega<br>';
  19. if(insertar_pedidos($_SESSION['referencia_pedido'],$_SESSION['fecha'],$_SESSION['referencia_proveedor'])){
  20. echo 'llega2<br>';
  21. echo 'Pedido insertado con éxito <br>';
  22.  
  23.  
  24.  
  25.  
  26. echo '<a href="index.php">Acceder </a>';
  27.  
  28. }else
  29.    
  30.     echo 'Pedido no creado';
  31.  
  32.  
  33.  
  34. }else echo '';
  35.  
  36.  
  37.  
  38. ?>

Última edición por cristiangd00; 29/10/2013 a las 06:10
  #4 (permalink)  
Antiguo 29/10/2013, 06:16
Avatar de xSkArx  
Fecha de Ingreso: marzo-2008
Ubicación: Chile
Mensajes: 945
Antigüedad: 16 años, 1 mes
Puntos: 96
Respuesta: Funcion en un select

El problema es que no procesa los datos obtenidos por la funcion
__________________
Busca, lee y practica todo lo que puedas.
Usa siempre el buscador antes de postear.
Si posteas código, utiliza el HIGHLIGHT correcto.

Etiquetas: funcion, mysql, select, sql
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 03:31.