array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'es', ), 'this' => array ( 0 => 'function.mysql-data-seek.php', 1 => 'mysql_data_seek', ), 'up' => array ( 0 => 'ref.mysql.php', 1 => 'Funciones de MySQL', ), 'prev' => array ( 0 => 'function.mysql-create-db.php', 1 => 'mysql_create_db', ), 'next' => array ( 0 => 'function.mysql-db-name.php', 1 => 'mysql_db_name', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'es', 'path' => 'reference/mysql/functions/mysql-data-seek.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5)
mysql_data_seek — Mueve el puntero de resultados interno
Esta extensión fue declarada obsoleta en PHP 5.5.0 y eliminada en PHP 7.0.0. En su lugar debería utilzarse las extensiones MySQLi o PDO_MySQL. Véase también la guía MySQL: elegir una API. Las alternativas a esta función son:
mysql_data_seek() mueve el puntero de filas interno del resultado de MySQL asociado con el identificador de resultado especificado para apuntar al número de fila especificada. La siguiente llamada a una función de obtención de MySQL, tal como mysql_fetch_assoc(), devolverá esa fila.
row_number
empieza en 0.
row_number
debería ser un valor en el rango de 0 a
mysql_num_rows() -1. Sin embargo, si el conjunto de resultados
esta vacío (mysql_num_rows() == 0), una búsqueda a 0
fallará con un E_WARNING
y
mysql_data_seek() devolverá false
.
result
El resultado resource que está siendo evaluado. Este resultado proviene de una llamada a mysql_query().
row_number
Número de la fila deseada del puntero de resultados nuevo.
Ejemplo #1 Ejemplo de mysql_data_seek()
<?php
$enlace = mysql_connect('localhost', 'usuario_mysql', 'contraseña_mysql');
if (!$enlace) {
die('No pudo conectarse: ' . mysql_error());
}
$bd_seleccionada = mysql_select_db('bd_muestra');
if (!$bd_seleccionada) {
die('La base de datos no pudo seleccionarse: ' . mysql_error());
}
$consulta = 'SELECT apellido, nombre FROM amigos';
$resultado = mysql_query($consulta);
if (!$resultado) {
die('La consulta falló: ' . mysql_error());
}
/* obtención de filas en orden inverso */
for ($i = mysql_num_rows($resultado) - 1; $i >= 0; $i--) {
if (!mysql_data_seek($resultado, $i)) {
echo "No se encuenta la fila $i: " . mysql_error() . "\n";
continue;
}
if (!($fila = mysql_fetch_assoc($resultado))) {
continue;
}
echo $fila['apellido'] . ' ' . $fila['nombre'] . "<br />\n";
}
mysql_free_result($resultado);
?>
Nota:
La función mysql_data_seek() puede ser usada solamente junto con mysql_query(), y no con mysql_unbuffered_query().