Foros del Web » Programando para Internet » PHP »

problema con suma

Estas en el tema de problema con suma en el foro de PHP en Foros del Web. Código PHP: <?  $get = mysql_query ( "SELECT * FROM comentarios" );  while ( $row  =  mysql_fetch_array ( $get ))  {    mysql_query ( "UPDATE config SET comentarios=comentarios+1 WHERE tipo='estadisticas'" );   echo  "Comentario id : " . ...
  #1 (permalink)  
Antiguo 04/08/2007, 17:07
 
Fecha de Ingreso: diciembre-2005
Mensajes: 249
Antigüedad: 18 años, 3 meses
Puntos: 0
problema con suma

Código PHP:
<?
 $get
=mysql_query("SELECT * FROM comentarios");

 while (
$row mysql_fetch_array($get))
 {
  
mysql_query("UPDATE config SET comentarios=comentarios+1 WHERE tipo='estadisticas'");
  echo 
"Comentario id : ".$row['idfile']." Insertado... OK<br>";
 }
?>
el problema es que me suma 2 por cada uno, osea si hay 7 filas suma 14 :S
  #2 (permalink)  
Antiguo 04/08/2007, 22:42
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problema con suma

Tu problema es que estas ejecutando ese codigo de agregar un numero a comentarios por cada fila de tu base de datos, si tienes 7 filas, se va a ejecutar ese UPDATE 7 veces y como es +1 terminas con el valor de 14.

Necesitas pensar bien tu algoritmo y que es lo que quieres hacer, o en dado caso veo que tienes un campo $idfile, ajusta tu consulta para que solo actualize ese campo asi:
Código:
UPDATE config SET comentarios=comentarios+1 WHERE tipo='estadisticas' AND idfile=$row['idfile']
Saludos.
  #3 (permalink)  
Antiguo 06/08/2007, 14:30
 
Fecha de Ingreso: diciembre-2005
Mensajes: 249
Antigüedad: 18 años, 3 meses
Puntos: 0
Re: problema con suma

Sigo sin entender, por que "idfile" no es un campo de la tabla "config", es de "comentarios"
  #4 (permalink)  
Antiguo 06/08/2007, 14:31
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Re: problema con suma

Entonces tienes que hacer primero un select contando el total de comentarios y luego actualizarlo en tu base de datos, es mas optimo esto a realizar consultas multiples.

Saludos.
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:47.