Ver Mensaje Individual
  #5 (permalink)  
Antiguo 30/11/2002, 11:29
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero que necesitas exactamente?

El ultimo registro y antepenultimo .. o solo algun(os) (no todos) los campos de ese ultimo y antepenultimo registro?

Si solo requieres de "campos" .. (y no todos los del registro) usa mysql_result() .. pero si requieres el registro entero (e "recordset") .. mejor usa el método de mysql_seek y mysql_fecht_xxx que describió josemi ..

Si vas a contar registros (tra .. la la :P) .. via SQL (COUNT(*) .. ) deberas ejecutar la consulta y obtener el unico resultado que arroja:

$consulta_total=mysql_query("SELECT COUNT(*) FROM tabla");
$total_registros=mysql_result($consulta_total,0);

y de ahí .. tendrias .. mmm jeje ahora q pienso ( ) ... para hacer un mysql_data_seek() igual hay que hacer la consulta entera con sus registros que arroje .. así q .. no serviria de mucho hacer lo que propongo pues tendrias que hacer otra vez otra consulta ...

Mira el ejemplo de php.net sobre mysql_data_seek():
Código PHP:
<?php
   $link 
mysql_pconnect("localhost""mysql_user""mysql_password")
       or die(
"Could not connect");

   
mysql_select_db("samp_db")
       or exit(
"Could not select database");

   
$query "SELECT last_name, first_name FROM friends";
   
$result mysql_query($query)
       or die(
"Query failed");

   
/* fetch rows in reverse order */
   
for ($i mysql_num_rows($result) - 1$i >= 0$i--) {
       if (!
mysql_data_seek($result$i)) {
           echo 
"Cannot seek to row $i\n";
           continue;
       }

       if(!(
$row mysql_fetch_object($result)))
           continue;

       echo 
"$row->last_name $row->first_name<br />\n";
   }

   
mysql_free_result($result);
?>
Lo que "queria" explicar en el mensaje anterior era las diferencias entre contar registros con la funcion mysql_num_rows() de PHP q requiere de la consulta realizada total (con sus N registros que genere) o de hacerlo via SQL directo .. que en este ultimo caso .. Mysql es quien te da el total en un solo resultado de un registro con la consiguiente velocidad de proceso q se ahorra si SOLO necesitamos el total ..

Un saludo,