Foros del Web » Programando para Internet » PHP »

como hacer varios update en una sola vez

Estas en el tema de como hacer varios update en una sola vez en el foro de PHP en Foros del Web. que función o como tengo que hacerlo para poder modificar varios registros...
  #1 (permalink)  
Antiguo 26/10/2011, 10:01
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 11 años, 3 meses
Puntos: 1
como hacer varios update en una sola vez

que función o como tengo que hacerlo para poder modificar varios registros
  #2 (permalink)  
Antiguo 26/10/2011, 10:16
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 12 años, 1 mes
Puntos: 2534
Respuesta: como hacer varios update en una sola vez

No entiendo, ¿tiene que ver con php tu pregunta?

Se supone que una consulta UPDATE es sintaxis SQL y no PHP.
Código PHP:
UPDATE tabla SET campo 'valor' 
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #3 (permalink)  
Antiguo 26/10/2011, 10:57
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: como hacer varios update en una sola vez

poder modificar el precio de 20 productos a la vez
solo me actualiza el ultimo porque solo me hace un update

por la url me envia los 20 productos tanto el nombre como el precio
el nombre lo envío por hidden y el precio con un input text porque

Código PHP:
Ver original
  1. $query_categoria_update_precios = 'UPDATE productos SET precio_producto_kg= ' . $_GET['precio_producto_kg'] . '  WHERE nombre_producto_pc=  \'' . $_GET['nombre_producto_pc'] . '\';';
  2. mysqli_query($link,$query_categoria_update_precios);
  #4 (permalink)  
Antiguo 26/10/2011, 11:00
Avatar de h2swider  
Fecha de Ingreso: julio-2007
Ubicación: Ciudad de Buenos Aires
Mensajes: 932
Antigüedad: 12 años, 10 meses
Puntos: 194
Respuesta: como hacer varios update en una sola vez

tendrías que hacer 20 updates para tu caso.

Dentro de algún ciclo, ya sea un while o foreach dependiendo como tengas armados los datos que recibes por los formularios.
__________________
Codifica siempre como si la persona que finalmente mantedra tu código sea un psicópata violento que sabe donde vives
  #5 (permalink)  
Antiguo 26/10/2011, 11:00
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 12 años, 1 mes
Puntos: 2534
Respuesta: como hacer varios update en una sola vez

Si usas el mismo name para todos los campos es obvio que solo te guarde el último, pues los name deben ser únicos.

Lo ideal es agrupar los campos en su notación de array, y al recibir dicho array solo debes iterarlo para ir ajustando las consultas.

La verdad no veo el problema, eso lo puedes investigar en el foro, hay bastantes temas similares.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 27/10/2011, 03:50
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: como hacer varios update en una sola vez

ayuda con warning

Código PHP:
$hostname="localhost";
       
$user="*******";
       
$password="*********";
       
$database="*********";
       
$link mysqli_connect($hostname,$user,$password,$database);
       
     
$query 'UPDATE productos SET precio_producto_kg=   ' .  $_GET['precio_producto_kg'] . '   WHERE nombre_producto_pc=  \'' $_GET['nombre_producto_pc'] . '\';';
      
mysqli_query ($link,'SET NAMES "utf8" ');
    
$result mysqli_query($link,$query) or die (mysqli_error($link));

    
      
/*mysqli_query($link,$query);*/
      
 
echo 'query: ' $query'</br>'
      
    echo 
'result: ' $result;
    
/* array asociativo */
      
while($row mysqli_fetch_array($result,MYSQLI_ASSOC)){
          echo 
$row['precio_producto_kg'];
        echo 
$row['nombre_producto_pc'] .'<br>';
      } 


devuelve esto el navegador que parámetro le falta el mysqli_fetch_array no le llega el $result

query: UPDATE productos SET precio_producto_kg= 50.00 WHERE nombre_producto_pc= 'casa';
result: 1
Warning: mysqli_fetch_array() expects parameter 1 to be mysqli_result, boolean given in /var/www/html/php/precio/precio.php on line 79
  #7 (permalink)  
Antiguo 27/10/2011, 10:31
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 12 años, 1 mes
Puntos: 2534
Respuesta: como hacer varios update en una sola vez

Solo las consultas SELECT pueden ser iteradas usando mysqli_fetch_array(), es por eso que recibes el error.

¿Para que estás usando el bucle después de actualizar?

Eso carece completamente de sentido.
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #8 (permalink)  
Antiguo 28/10/2011, 23:53
 
Fecha de Ingreso: febrero-2009
Mensajes: 443
Antigüedad: 11 años, 3 meses
Puntos: 1
Respuesta: como hacer varios update en una sola vez

solo tendrían que ir con mysqli_query y $query y un while

Última edición por albertrc; 01/11/2011 a las 11:43

Etiquetas: registro, update, vez
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:13.