Foros del Web » Programando para Internet » PHP »

Problema con código PHP

Estas en el tema de Problema con código PHP en el foro de PHP en Foros del Web. Hola, buenas tardes, Tengo un problema con un código y no se cuál sea el error... Les explico. Tengo una tabla de pedidos en mi ...
  #1 (permalink)  
Antiguo 03/10/2012, 16:55
Avatar de Middrel  
Fecha de Ingreso: abril-2005
Mensajes: 835
Antigüedad: 19 años
Puntos: 27
Problema con código PHP

Hola, buenas tardes,

Tengo un problema con un código y no se cuál sea el error... Les explico.

Tengo una tabla de pedidos en mi base de datos, en la cuál debe haber una opción para poder cambiar el pedido que ya ha sido almacenado en esta tabla. Por ejemplo, si el cliente pidió 10 piezas de A, 10 piezas de B, 10 piezas de C, etc... y posteriormente quiere cambiar alguna de estas, pues debe ser posible hacerlo.

Tengo el siguiente código:

Código PHP:
<table>
                    <form action="cambios.php" method="post">
                    <tr>
                        <td>Cantidad</td>
                        <td>Pieza</td>
                        <td>Cantidad a cambiar</td>
                        <td>Piezas por cambio</td>
                    </tr>
                    <?php 
                        $i
=0
                        
$rowSqlMarcas = array();
                        while(
$rowSqlPiezasPedido mysql_fetch_array($sqlPiezasPedido)) { ?>
                    <tr>
                        <td><input type="text" name="cantidadOriginal<?php echo $i?>" id="cantidadOriginal<?php echo $i?>" value="<?php echo $rowSqlPiezasPedido['cantidad']; ?>"  disabled="disabled"/></td>
                        <td><input type="text" name="piezasOriginal<?php echo $i?>" id="piezasOriginal<?php echo $i?>" value="<?php echo $rowSqlPiezasPedido['nombre']; ?>" disabled="disabled" /></td>
                        <td>
                            <input type="text" name="cantidadCambio<?php echo $i?>" id="cantidadCambio<?php echo $i?>" />
                            <input type="text" name="hiddenId<?php echo $i?>" id="hiddenId<?php echo $i?>" value="<?php echo $rowSqlPiezasPedido['id_piezas']; ?>" />
                         </td>
                        <td>
                            <select name="piezasCambio<?php echo $i?>">
                                    <option value="0">-- Seleccione --</option>
                                    <?php while($rowSqlMarcas[$i] = mysql_fetch_array($sqlMarcas)) { ?>
                                    <option value="<?php echo $rowSqlMarcas[$i]['id_pack']; ?>"><?php echo $rowSqlMarcas[$i]['nombre']; ?></option>
                                    <?php ?>
                             </select>
                        </td>
                    </tr>
                    <?php $i++; } 
                    
                    
$cambios = array();
                    
$idCambios = array();                
                    
$origen = array();
        
                     
/* Cambio de artículos */
                    
var_dump();
                    if(
$_POST['cambiar']) {
                        
                        for(
$j=0$j<$i$j++) {
                            
$cambios[$j] = $_POST['cantidadCambio'.$j];
                            
$idCambios $_POST['piezasCambio'];
                            
$origen[$j] = $_POST['piezasOriginal'.$j];
                            if(isset(
$cambios[$j])) {
                                
                                
$sqlCambioPiezas mysql_query("Update piezas Set cantidad = $cambios[$j] Where id_piezas = $idCambios ");
                                
                            }
                            
                        }
                        
                    }
                    
?>
                    <tr>
                        <td></td>
                        <td></td>
                        <td></td>
                        <td align="center"><input type="submit" name="cambiar" id="cambiar" value="Cambiar" /></td>
                    </tr>
                    </form>
                </table>
Este código que hace. Bueno, primero despliega en dos columnas la cantidad y la pieza adquirida en inputs no editables. Luego pinta una tercera columna donde va a colocar el cuadro donde se elegirán las piezas a cambiar y en una cuarta columna un scroll donde se verán los nombres de las piezas para poder elegir por cual se cambian.

La idea era que salieran por cada línea, los scrolls con los nombres de las piezas, sin embargo sólo el primero trae información y los siguientes vienen vacíos. Lo que no entiendo es el porque sólo el primer scroll funciona y los demás no.

Estas son las consultas que utilizo:

$sqlPiezasPedido = mysql_query("SELECT nombre, cantidad, id_pedido, id_piezas FROM `piezas` as piezas Left Join dress_pack as dress On (id_dress = id_pack) Where id_pedido = $cambio");

y

$sqlMarcas = mysql_query("Select * from dress_pack");

Este es un ejemplo de como deben salir:

10 A [] Scroll con las piezas (A, B, C, D, E)
10 B [] Scroll con las piezas ()
10 C [] Scroll con las piezas ()

Bueno... espero entiendan la simulación :P La primera columna marca la cantidad (esa sale bien), la segunda el nombre de la pieza (esa sale bien), la tercera el input para poner la cantidad nueva (sin problema), y la cuarta el scroll... pero sólo en la primera línea se llena, las siguientes viene vacía.

Espero y haber sido algo claro, de todas formas sigo por aquí... Saludos y de antemano gracias por sus comentarios!!

Etiquetas: mysql, sql, tabla
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 09:13.