Hallo, Encoder,
Um wie viele Zufallswerte geht es ungefähr?
Zur Zeit knapp unter 100.
Das könntest du umgehen indem du die gesamten Millisekunden der Uhr (also seit 1.1.1900 oder was die eben hergibt) verwendest.
Wenn ich mal davon ausgehe, dass Zugriffe im Bereich der Tausendstelsekunden gleichverteilt sind (also 0, 233, 877, 999 kommen ebensooft vor wie 1, 578 usw), müsste doch folgende Überlegung gelten:
Das, was die Mikrosekunden in Prozent zu 999 sind, müsste die Satznummer in Prozent zu der Satzanzahl sein:
if ( mysql_num_rows($res) ) // null abfangen
{
list($usec, $sec) = explode(" ", microtime()); // $usec = 0 .. 999
$mikro_pro = $usec /999 *100; // 999 = 100%
$satz_nr = round(mysql_num_rows($res) *$mikro_pro /100);
}
Beispiel: 66 Sätze
$usec $mikro_pro $satz_nr
----- ---------- --------
000 000.00 00
025 002.50 01
500 050.05 33
999 100.00 66
Einverstanden?
Gruß, Gast