Мне нужно сделать случайный вывод 6-и цифр и записать их в базу..
Это вообще то сделать легко..
Но мне ещё в добавок нужно сделать так, чтобы эти цифры не повторялись..
А каждый раз глядеть в базу это глупо и засирание скрипта..
Как можно сделать всё одним ходом?
Быдлокодер (01.06.2011/11:50)
а как они у тебя записываются? в виде массива? или же для каждой цифры свое поле?
Для одной цифры своё поле..
Случаный выбор производится с помощью rand();
время между записями в базу какое? Ну час или секунда ?
G-ART (01.06.2011/12:07)
время между записями в базу какое? Ну час или секунда ?
Смотри как мне надо:
$rand1 = rand(1, 12); //случайное число
$sql = mysql_query("Блаблабла"); смотрим есть ли такое число уже в базе
if (!mysql_num_rows($sql)) //если есть то
$rand = rand(1, 2); //то находим новое
И вот так мне надо сделать 6 раз
---
Если можно проще, то сделайте проще))
а как вариани сделать поле с auto_increment и указать AUTO_INCREMENT=100000
и само будет прибавляться
, гг, может я чего не так сказал
или брать последние 6 цифр от UNIX и записывать в базу.
seg0ro (01.06.2011/12:58)
или брать последние 6 цифр от UNIX и записывать в базу.
примерно так =>
$rand1 = rand (100500, 1005001); //находим первое число
$req = mysql_query("SELECT * FOM `durak` WHERE refid='$id' AND num='$rand1' AND type='card'"); //ищем такое число в базе
if (mysql_num_rows($req))
//если в базе такое число есть, то
$rand1 = rand (100500, 1005001); //генерируем следующее
и т.д
Кароче я тупил, сейчас оттупил
Мне нужно 6 переменных, в которых будет содержатся по одной цифре..
Причём эти числа должны отличатся..
$a = 1;
$b =$a + 1;...
Бгг
нее..не то
$x = 6;//сколько те чисел надо
$num = array();
for($i = 1; $i <= $x; $i++) {
for(;;) {
$r = rand(1, 12);
if(!array_search($r, $num)) {
$num[$i] = $r;
break;
} else
continue;
}
}
//вывод массива с числами
foreach ($num as $key => $v)
echo '<b>'.$key.'</b>) - '.$v.'<br />';
- кому надо..
----
Зы..тему можно клоцед..гг