PHP/MySQL Database/sqlite seek — различия между версиями

Материал из Web эксперт
Перейти к: навигация, поиск
м (1 версия)
 
м (1 версия)
 
(нет различий)

Текущая версия на 07:06, 26 мая 2010

sqlite_seek.php

 
<?php
   $sqldb = sqlite_open("mydatabase.db");
   $results = sqlite_query($sqldb, "SELECT empid, name FROM employee");
   $random = rand(0,sqlite_num_rows($results)-1);
   sqlite_seek($results, $random);
   list($empid, $name) = sqlite_current($results);
   echo "Randomly chosen employee of the month: $name (Employee ID: $empid)";
   sqlite_close($sqldb);
?>



Using the sqlite_seek() Function

 
<?php
    function random_row($result) {
        $t_rows = sqlite_num_rows($result);
        if($t_rows > 0) {
            sqlite_seek($result, rand(0, ($t_rows-1)));
            return sqlite_current($result);
        } else {
            return false;
        }
    }
    $sqlite = sqlite_open(":memory:");
    sqlite_query($sqlite, "CREATE TABLE test(value INTEGER PRIMARY KEY)");
    sqlite_unbuffered_query($sqlite, "INSERT INTO test VALUES(NULL)");
    $result = sqlite_query($sqlite, "SELECT * FROM test");
    var_dump(random_row($result));
?>