Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/12/2003, 06:39
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Lo más optimo para hacer una consulta a tu BD para ver si X condición se cumple (ej. exite el registro bajo la condición que usas WHERE ....) es usar COUNT() de Mysql para que -sólo- te entrege Msyql el resultado en un único campo el total de coincidencias de tu condicional " .. WHERE ..." de tu consulta SQL.

La función mysql_num_rows() de PHP .. "cuenta" el total de registros de una consulta dada .. pero con la consulta hecha .. así que esto es útil cuando muestras esos datos y -ademas- quieres contar el total. Pero, sólo para saber el total es más óptimo hacerlo por SQL directamente con COUNT() ya que sólo generas un "recordset" con ese dato del total .. La cuenta en sí de registros se la trabaja Mysql integramente.

En tu caso ..sería algo así:

Código PHP:
$resultados mysql_query("SELECT COUNT(*) FROM estadisticas WHERE fecha = CURDATE() ",$conexion);

// SI EXISTE ACTUALIZA
if(mysql_result($resultados,0) > 0){
//etc ... 
Por el tema de los problemas "aleatorios" que tienes .. no sé que decirte. Tendrías que estudiar "que" datos son los que se repiten por si hay problemas tal vez con los tipos de campo .. Supongo que si usas CURDATE() será por qué usas un campo tipo fecha "DATE" (no datetime)?

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.