Foros del Web » Programando para Internet » PHP »

Arreglos en formularios

Estas en el tema de Arreglos en formularios en el foro de PHP en Foros del Web. Mi problema es el siguiente: resulta que envio dos arrelglos a una pagina y son s[] y ca[] pero solo s[] llega con los valores ...
  #1 (permalink)  
Antiguo 05/12/2005, 19:39
Avatar de The_Dark_Roy  
Fecha de Ingreso: enero-2004
Mensajes: 218
Antigüedad: 13 años, 11 meses
Puntos: 0
Arreglos en formularios

Mi problema es el siguiente:
resulta que envio dos arrelglos a una pagina y son s[] y ca[] pero solo s[] llega con los valores y ca[] solo llega el valor que esta en la posicion primera, cabe decir que esto genera una lista de checkbox y se supone que selecciono el check que quiero y en el campo input ingreso la cantidad del articulo que deseo, pero como les digo al parecer no me pesca la variable ca[] como arreglo si no solo me envia un solo valor que es el primero que se despliega

Código PHP:
<tr bgcolor="<?php echo"$td_color"?>">
                                                            <td align="left"><span class="proveedor_texto"><?php echo "$fila[nom_prov]";?></span></td>
                                                            <td align="left"><span class="proveedor_texto"><?php echo "$fila[nom_insu]";?></span></td>
                                                            <td align="right"><span class="proveedor_texto"><?php echo "$$fila[precio]";?></span></td>
                                                            <td align="center"><input class="input" type="checkbox" name="s[]" value="<?php echo "$fila[id_i]";?>"></td>
                                                            <td align="center"><input class="input" type="text" name="ca[]" size="1"></td>
                                                        </tr>
lo recibo de la siguiente forma:
Código PHP:
<table border="0" bgcolor="#471F10" cellpadding="1" cellspacing="1" width="100%">
                                            <?php
                                                $i
=0;
                                                
$selec=$_POST['s'];
                                                
$cant=$_POST['ca'];
                                                
$c=$cant[0];
                                                
$s=$selec[0];
                                                while(!empty(
$s)){
                                                    
$qry="SELECT  r.id AS id, r.nombre AS nom_rubro,p.nombre AS nom_prov,i.nombre AS nom_insu,i.precio_unidad AS precio, i.id AS id_i FROM proveedores as p, insumos as i, rubro as r WHERE i.id_proveedor=p.id AND r.id=i.id_rubro AND i.id= '$s' ORDER BY r.id,i.nombre,p.nombre";
                                                    
$res=mysql_query($qry);
                                                    
$fila=mysql_fetch_assoc($res);
                                                    if(
$i%2==0){
                                                        
$td_color="#CAAC8A";
                                                    }else{
                                                        
$td_color="#A77A52";
                                                    }
                                                    echo 
$c;
                                                    
$egreso=$fila[precio]*$c;
                                                    
$sub_total+=$egreso;
                                                
                                            
?>
                                                        <tr bgcolor="<?php echo"$td_color"?>">
                                                            <td align="left"><span class="proveedor_texto"><?php echo "$s";?></span></td>
                                                            <td align="left"><span class="proveedor_texto"><?php echo "$fila[nom_insu]";?></span></td>
                                                            <td align="right"><span class="proveedor_texto"><?php echo "$egreso";?></span></td>
                                                        </tr>
                                            <?php
                                                    $i
++;
                                                    
$c=$cant[$i];
                                                    
$s=$selec[$i];
                                                }
                                                
$total=$sub_total*1.19;
                                            
?>
                                                        <tr bgcolor="#CAAC8A">
                                                            <td align="right" colspan="2"><span class="proveedor_texto">Sub Total</span></td>
                                                            <td align="right"><span class="proveedor_texto"><?php echo "$sub_total";?></span></td>
                                                        </tr>
                                                        <tr bgcolor="#A77A52">
                                                            <td align="right" colspan="2"><span class="proveedor_texto">Total</span></td>
                                                            <td align="right"><span class="proveedor_texto"><?php echo "$total";?></span></td>
                                                        </tr>
                                                    </table>
donde se deveria mostrar ell egreso que es la cantidad por el precio unitario pero solo me pesca el valor de la primera opcion y el resto como cero.

necesito ayuda ;)

quien me puede decir por que sucede esto?????
__________________
ojala te hayas quitado la venda

http://www.surire.cl
http://www.uta.cl
  #2 (permalink)  
Antiguo 06/12/2005, 17:37
Avatar de The_Dark_Roy  
Fecha de Ingreso: enero-2004
Mensajes: 218
Antigüedad: 13 años, 11 meses
Puntos: 0
y la ayuda?
necesito alguna ayuda
__________________
ojala te hayas quitado la venda

http://www.surire.cl
http://www.uta.cl
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 02:53.