Foros del Web » Programando para Internet » PHP »

Combo Box

Estas en el tema de Combo Box en el foro de PHP en Foros del Web. Como se si un combo box tipo lista contiene informacion o no me explico, tengo 2 listas una llena con datos de la BD y ...
  #1 (permalink)  
Antiguo 05/09/2006, 15:35
 
Fecha de Ingreso: julio-2006
Mensajes: 150
Antigüedad: 17 años, 8 meses
Puntos: 0
Combo Box

Como se si un combo box tipo lista contiene informacion o no me explico, tengo 2 listas una llena con datos de la BD y otra que se va llenando con lo que yo seleccione para pasar de un lado pa otro quiero saber si la lista 2 la que se llena con lo que selecciono esta llena o vacia
  #2 (permalink)  
Antiguo 05/09/2006, 15:45
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
No queda nada claro como "llenas" ese combo "2" que hablas ..

¿Por qué no pones el código que usas? .. tal vez ahí la gente se haga mejor una idea de tu problema (por qué como lo explicastes y como ahora lo explicas sigue sin quedar calaro).

Tampoco dejas claro "cuando" quieres saber que está "llena o no" .. en tu script PHP al procesar esos datos -o antes- .. de eviarlos?.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #3 (permalink)  
Antiguo 05/09/2006, 15:58
 
Fecha de Ingreso: julio-2006
Mensajes: 150
Antigüedad: 17 años, 8 meses
Puntos: 0
Perfect

Tengo 2 listas no es relevante el como las lleno por eso no lo coloco simplemente la idea de como funciona es la siguiente lista 1 --> lista2 a la hora de enviar el formulario quiero ver si la lista 2 contiene datos o esta vacia
  #4 (permalink)  
Antiguo 05/09/2006, 16:05
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Insisto que el "código" en este caso ayuda ..

Supongo que tu "lista2" será un <select name="tal" multiple> o como? ..

Bueno . .en principio

Código PHP:
if (empty($_POST['tal'])){
// está vacio ...

Como no das más detalles .. empieza probando eso. Pero realmente si quires mayor ceteza .. por favor si se te pide el "código" suele ser por algo .. muchas veces ayuda a hacerse una idea más concreta de como trabajas o corregir algo que falte!.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #5 (permalink)  
Antiguo 05/09/2006, 16:15
 
Fecha de Ingreso: julio-2006
Mensajes: 150
Antigüedad: 17 años, 8 meses
Puntos: 0
Código PHP:
///pasar pa la derecha ord alquiler
function pasar_der_alq() {
    obj=document.getElementById('todas_ordenes');
    if (obj.selectedIndex==-1) return;
    valor=obj.value;
    document.form1.alquiler.value = document.form1.alquiler.value+valor+"*";
    txt=obj.options[obj.selectedIndex].text;
    obj.options[obj.selectedIndex]=null;
    obj2=document.getElementById('seleccion_ordenes');
    opc = new Option(txt,valor);
    eval(obj2.options[obj2.options.length]=opc);
}

//remover las alquiler
function eliminar_alquiler(texto,codigo){
    var foo = texto;
    var arreglo1 = foo.split("*");
    var resultado = "";
    for(var i = 0;i<arreglo1.length-1;i++){
          var cadena = arreglo1[i]; 
          if(cadena != codigo){
            resultado = resultado+cadena+"*";
        }
    }
    document.form1.alquiler.value = resultado;
}

//pasar izquierda ord alquiler
function pasar_izq_alq() {
    obj=document.getElementById('seleccion_ordenes');
    if (obj.selectedIndex==-1) return;
    valor=obj.value;
    eliminar_alquiler(document.form1.alquiler.value,valor);
    txt=obj.options[obj.selectedIndex].text;
    obj.options[obj.selectedIndex]=null;
    obj2=document.getElementById('todas_ordenes');
    opc = new Option(txt,valor);
    eval(obj2.options[obj2.options.length]=opc);
}
<div id="cuerpo" style="position:absolute; left:109px; top:94px; width:692px; height:580px; z-index:3">
<form name="form1" method="post" action="">
  <?php    
    conexion_alc
('root','114622');
      if (
$_POST["opcion"]!= "ingreso"){
          
$rif_cliente $_POST["cliente"];
          
$factura $_POST["factura"];
        
$status $_POST["status"];
        
$razon $_POST["razon"];
  
?>        
  <p align="center">Seleccione las Ordenes de Alquiler a Facturar     </p>
  <table width="685" border="1" align="center">
    <tr>
      <td width="52"># Orden </td>
      <td width="144">Fecha Inicio (A-M-D) </td>
      <td width="79">Monto Total </td>
      <td width="89">&nbsp;</td>
      <td width="53"># Orden </td>
      <td width="144">Fecha Inicio (A-M-D) </td>
      <td width="78">Monto Total </td>
    </tr>
    <tr>
      <td colspan="3" rowspan="2"><?php combo_ordalq_factura($rif_cliente); ?></td>
      <td height="50"><div align="center">
        <input name="der_alq" type="button" id="der_alq" value="&gt;&gt;" onClick="pasar_der_alq()">
      </div></td>
      <td colspan="3" rowspan="2"><select name="seleccion_ordenes" size="7" id="seleccion_ordenes">
      </select>
      </td>
    </tr>
    <tr>
      <td><div align="center">
        <input name="izq_alq" type="button" id="izq_alq" value="&lt;&lt;" onClick="pasar_izq_alq()">
      </div></td>
    </tr>
  </table>
  <p align="center">Seleccione las Ordenes de Reparacion a Facturar </p>
  <table width="690" border="1" align="center">
    <tr>
      <td width="52"># Orden </td>
      <td width="149">Fecha  Reparacion </td>
      <td width="79">Monto Total </td>
      <td width="88">&nbsp;</td>
      <td width="52"># Orden </td>
      <td width="145">Fecha Reparacion </td>
      <td width="79">Monto Total </td>
    </tr>
    <tr>
      <td colspan="3" rowspan="2"><?php combo_ordrep_factura($rif_cliente); ?></td>
      <td height="56"><div align="center">
        <input name="der_rep" type="button" id="der_rep" value="&gt;&gt;" onClick="pasar_der_rep()">
      </div></td>
      <td colspan="3" rowspan="2"><select name="seleccion_rep" size="7" id="seleccion_rep">
                  </select></td>
    </tr>
    <tr>
      <td><div align="center">
        <input name="izq_rep" type="button" id="izq_rep" value="&lt;&lt;" onClick="pasar_izq_rep()">
      </div></td>
    </tr>
  </table>
  <p align="center">Seleccione los Productos que quiere Facturar </p>
  <table width="691" border="1">
    <tr>
      <td width="53">Codigo</td>
      <td width="145">Nombre</td>
      <td width="81">Precio Venta </td>
      <td width="88">Cant
        <input name="cantidad" type="text" id="cantidad" size="1"></td>
      <td width="45">Codigo</td>
      <td width="146">Nombre</td>
      <td width="87">Precio Venta </td>
    </tr>
    <tr>
      <td colspan="3" rowspan="2"><?php combo_prod_factura(); ?></td>
      <td height="61"><div align="center">
        <input name="der_prod" type="button" id="der_prod" value="&gt;&gt;" onClick="pasar_der_prod()">
      </div></td>
      <td colspan="3" rowspan="2"><select name="seleccion_productos" size="7" id="seleccion_productos">
      </select>
      </td>
    </tr>
    <tr>
      <td><div align="center">
        <input name="izq_prod" type="button" id="izq_prod" value="&lt;&lt;" onClick="pasar_izq_prod()">
      </div></td>
    </tr>
  </table>
  <p>&nbsp;</p>
  <table width="200" border="0" align="center">
    <tr>
      <td width="89"><div align="center">
        <input name="Ingresar" type="submit" id="Ingresar" value="Ingresar" onClick="ingresar()">
      </div></td>
      <td width="101">&nbsp;</td>
    </tr>
  </table>
  <p align="center"><input name="opcion" type="hidden" id="opcion">
      <input name="productos" type="hidden" id="productos">
      <input name="alquiler" type="hidden" id="alquiler">
      <input name="reparacion" type="hidden" id="reparacion">
      <input name="cliente" type="hidden" id="cliente" value= "<?php if ($_POST){echo $rif_cliente;}?>">
      <input name="factura" type="hidden" id="factura" value= "<?php if ($_POST){echo $factura;}?>">
      <input name="status" type="hidden" id="status" value= "<?php if ($_POST){echo $status;}?>">
      <input name="razon" type="hidden" id="razon" value= "<?php if ($_POST){echo $razon;}?>">
  </p>
  </form>
    <div id="boton cancelar" style="position:absolute; left:357px; top:676px; width:67px; height:26px; z-index:4">
  <form name="cancelar" method="post" action="Home.php" >
  <input type="submit" name="cancelar" value="Cancelar" >
  </form>
  </div>

Última edición por Cluster; 05/09/2006 a las 19:13
  #6 (permalink)  
Antiguo 05/09/2006, 19:23
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Ahora toca una explicación de tu código .. disculpa que sea así .. pero realmente no explicas nada .. hay que "sonsacarte" las cosas y así como veras ni se avanza ni se resuelve tu problema.

Por el código que presentas . .entiendo que el "select" de HTML:
<select name="seleccion_productos" size="7" id="seleccion_productos">

Se van agregando "option" al mismo (en forma dinámica por las funciones javascript que usas).

OK .. si es así .. al final del proceso "seleccionarías" una opción de esas .. por que ese "select" no es "multiple" y para que en PHP puedas tomar todas las opciones -selecionadas- (una o varias) tendría que ser tratado como un "array" y eso se hace definiendo el "name" de elemento "select" como []

Código PHP:
<select name="seleccion_productos[]" size="7" id="seleccion_productos" multiple ></select
Así en PHP tendrías un array que recorrer (para obtener todas las opciones seleccionadas) y a su vez verificar el n° de elementos entregados (con un count() de funciones de array's comunes) o un empty() como ya te comenté antes.

Realmetne si explicas más claro el procedimiento que sigues .. que o cuantos valores selecionas o esperas seleccionar o como quieres que trabaje ese punto tu código será lo ideal. En definitiva si tu defines el "objetivo" de lo que deseas hacer ya podríamos ver si tu código lo cumple o no.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
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 22:00.