Loading...
PHP/MySQL | Rand не повторялись цифы

<?php
$number = rand(1, 20);
while ($number == mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>


Наверное так, не совсем понял вопроса.
KeepLine (03.07.2016 в 11:08)
_[ЗлоЙ-ШкольниК]_ (03.07.2016 в 11:07)
50руб Ы

думал через while прогнать цифры если совпадет опять Rand

Пост #11 попробуй.
Саня (03.07.2016 в 11:10)
KeepLine (03.07.2016 в 11:08)
_[ЗлоЙ-ШкольниК]_ (03.07.2016 в 11:07)
50руб Ы

думал через while прогнать цифры если совпадет опять Rand

Пост #11 попробуй.


щас
Саня (03.07.2016 в 11:09)

<?php
$number = rand(1, 20);
while ($number == mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>


Наверное так, не совсем понял вопроса.


он не будет выполняться ) так как запись в баз не будет осуществляться а если в while закинуть запрос INSERT то будет бесконечная запись в базу
KeepLine (03.07.2016 в 11:16)
Саня (03.07.2016 в 11:09)

<?php
$number = rand(1, 20);
while ($number == mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>


Наверное так, не совсем понял вопроса.


он не будет выполняться ) так как запись в баз не будет осуществляться а если в while закинуть запрос INSERT то будет бесконечная запись в базу

Сорь, я чёт не так написал, с утра голова не варит, ща

<?php
$number = rand(1, 20);
while (mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")!=0) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>

________
посл. ред. 03.07.2016 в 11:18; всего 1 раз(а); by Саня
Саня (03.07.2016 в 11:17)
KeepLine (03.07.2016 в 11:16)
Саня (03.07.2016 в 11:09)

<?php
$number = rand(1, 20);
while ($number == mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>


Наверное так, не совсем понял вопроса.


он не будет выполняться ) так как запись в баз не будет осуществляться а если в while закинуть запрос INSERT то будет бесконечная запись в базу

Сорь, я чёт не так написал, с утра голова не варит, ща

<?php
$number = rand(1, 20);
while (mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")!=0) {
$number = rand(1, 20);
}
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
?>


Все равно данный скрипт будет повторяться и ошибка со скобкой в while (mysql_num_rows(mysql_query("SELECT * FROM `num` WHERE `number`='".$number."'")!=0))
KeepLine, почему же он не будет выполнятся?

<?$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `num` WHERE `user` = '$user[id]' "),0);// сколько чисел уже записано
$number=20;// макс.кол-во чисел
$count_num=$number-$count; // сколько чисел не занесено
for($i=0; $i<$count_num; $i++)
{
$rand=rand(1,$number);
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `num` WHERE `number` = '$rand' AND `user` = '$user[id]' "),0)==0)
{
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
}
else
$i--;
}

________
посл. ред. 03.07.2016 в 11:38; всего 2 раз(а); by RUS
ща погодь, одним запросом ебану тебе.
RUS (03.07.2016 в 11:36)

<?$count=mysql_result(mysql_query("SELECT COUNT(*) FROM `num` WHERE `user` = '$user[id]' "),0);// сколько чисел уже записано
$number=20;// макс.кол-во чисел
$count_num=$number-$count; // сколько чисел не занесено
for($i=0; $i<$count_num; $i++)
{
$rand=rand(1,$number);
if(mysql_result(mysql_query("SELECT COUNT(*) FROM `num` WHERE `number` = '$rand' AND `user` = '$user[id]' "),0)==0)
{
mysql_query("INSERT INTO `num` SET `number` = '".$number."' , `user` = '".$us['id']."' ");
}
else
$i--;
}





код записывает сразу 20 цифр не повторяя

А надо по 1 разу чтобы записывал не повторяя цифры от 1 до 20
Онлайн: 3
Время:
Gen. 2.6274
(c) Bym.Guru 2010-2025