Ver Mensaje Individual
  #2 (permalink)  
Antiguo 22/06/2011, 04:05
Avatar de repara2
repara2
 
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: actualizar diferentes registros ejecutando una consulta a una tabla

Hola midpunto, la verdad es que no se entienda nada tu codigo, te paso un version comentada a ver si te ayudo, saludos:
Código PHP:
Ver original
  1. <?php
  2. while(mysql_num_rows>0){ //?? es una variablo o una funci´on?
  3.     mysql_select_db($database_conecta, $conecta); //Seleccionas db en cada vuelta del loop??
  4.     $query_artics = "SELECT * FROM ventas_lin WHERE contrato_venlin = 1 "; //Esta select es estatica, siempre es la misma, no tiene sentido que este en un bucle
  5.     $artics = mysql_query($query_artics, $conecta) or die(mysql_error());
  6.     $row_artics = mysql_fetch_assoc($artics);
  7.     $totalRows_artics = mysql_num_rows($artics);
  8.     mysql_select_db($database_conecta, $conecta); //otra conexion para hacer un update?
  9.     $updateSQL = "UPDATE aticulos set stock_art = stock_art + 1 where Id_art= '".$row_artics['artic_venlin']."'";
  10.     mysql_select_db($database_conecta, $conecta);
  11.     $Result1 = mysql_query($updateSQL, $conecta) or die(mysql_error());
  12.  
  13. }
  14.  
  15.  
  16. //<----------------------------
  17. //1. Conectarse a la db...
  18. //2. Seleccionar db, no entiendo por que necesitas dos pasos, pero ok
  19.     if(!mysql_select_db($database_conecta, $conecta))die(mysql_error());
  20.     $query_artics = "SELECT * FROM ventas_lin WHERE contrato_venlin = 1 ";
  21.     if(!$query = mysql_query($query_artics))die(mysql_error()." en linea 18");
  22.     //Mientras haya resultados, actualizar la otra tabla
  23.     while($f = mysql_fetch_assoc($query))
  24.     {
  25.     $updateSQL = "UPDATE aticulos set stock_art = stock_art + 1 where Id_art= '".$row_artics['artic_venlin']."'";
  26.     if(!$query2 = mysql_query($updateSQL))die(mysql_error()." en linea 25");
  27.     }
  28.     //Liberar resultados
  29.     mysql_free_result($query);
  30.  
  31. ?>
__________________
Fere libenter homines, id quod volunt, credunt.