Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/11/2013, 13:54
orw28
 
Fecha de Ingreso: agosto-2009
Ubicación: Venezuela
Mensajes: 82
Antigüedad: 14 años, 9 meses
Puntos: 0
Problema para actualizar datos con un while

Buenas buenas!! :) Espero me puedan ayudar con la siguiente situación:

Tengo un formulario donde se aprecian los datos de una venta, y se muestra el codigo de venta, el producto vendido, la cantidad y el precio. Estoy probando con tres productos por lo tanto mi tabla me muestra 3 registros con el mismo codigo de venta, y los respectivos datos de los prductos. Resulta que debo dejar abierta la opcion d editar la cantidad y para eso tengo el siguiente formulario:

Código HTML:
<form action="javascript: fn_modificar();" method="post" name="frm_per" id="frm_per">
<input type="hidden" id="id" name="id" value="<?=$_POST['codigo_venta']?>" />
<table>
		<tr id="tr_<?=$rs_per['codigo_venta']?>">
			<td><?=$rs_per['codigo_venta']?></td>
			<td><input type="hidden" name="idp" id="idp" value="<?=$otro['id']?>"><?=$namepro?></td>
			<td><input type="text" name="cantidad" size="10" value="<?=$rs_per['cantidad']?>"></td>
            <td><?=$rs_per['precio']?></td>
        </tr>
        <td colspan="2">
            <input type="submit" value="Modificar" name="modificar">
			<input name="cancelar" type="button" id="cancelar" value="Cerrar" onclick="fn_cerrar();" />
        </td>
</table>
</form> 
Hasta ahi todo bien, pero si edito la cantidad de los tres productos, solamente en mi base de datos (en mysql) se modifica el ultimo registro. Aqui mi archivo php con la sentencia sql:

Código PHP:
<?php
    
require("../sesion/conexion.php");
    
    
$cuenta=mysql_query("SELECT count(*) FROM detalle_venta where codigo_venta='$_POST[id]'");
    
$resultado mysql_result($cuenta,0);
    
    
$i=1;
    while (
$i <= $resultado) {
        
$strsql"UPDATE detalle_venta SET cantidad='$_POST[cantidad]' WHERE id='$_POST[idp]'";
        
$result=mysql_query($strsql);
                
$i++;
        }
?>
En mi ejemplo son 3 registros y deberia meterse en el ciclo 3 veces pero nose porq solo modifica el ultimo registro. Les agradeceria mucho su ayuda please!!

Última edición por orw28; 02/11/2013 a las 14:06