есть база данных, с юзерами параметры: "логин" "1 человек" "2 человек" "выполнил" как только один из юзеров нажимает на кнопку допустим "Вступить" в базу заносится значение логин. после нажатия на кнопку вторым, создается новая строка Но логин 2-го должен попасть к первому в значение "1 человек" после нажатия на кнопку 3-го, создается новая строка логин 3-го должен попасть к первому в значение "2 человек" как только параметры "1 человек" и "2 человек" заполнены, 1-му юзеру присваивается в графу "выполнил" значение "1" и строка с ("логин" "1 человек" "2 человек" "выполнил") первого юзера удаляется далее нажимают 4й, 5й, 6й проделывается то же самое. но как это оформить, в порядке очереди? что бы 4 и 5 попал только к 3му а 6й и 7й к 4 и так дальше 8й и 9й к 4му 10й и 11й к 5
"вещевая" выдает вещи для "героев". если два человека подпишуться --- Добавлено --- Или подскажите алгоритм. или от куда достать можно?
Вы сами сейчас описали весь алгоритм. Причём довольно неплохо. Осталось только это продублировать в коде. Можете сами начать делать. Если что-то будет непонятно - тут могут подсказать. Можете просто заплатить кому-то и вам быстро всё напишут.
Сама суть мне понятна. Но не понятно, как организовать запрос, для очереди. Про которую писал выше. Как доставать именно тех, кто вступил раньше и у кого одно из мест или два свободны. Как это организовать не понятно --- Добавлено --- Со свободными местами то же разобрался. Осталось только "живая очередь"
Непонятно, что подразумевается под понятием "живая очередь". Насколько я понял: есть только одна кнопка вступить. Очередь формируется по основам "кто первый встал - того и тапки". Т.е. кто первй вступил - тому и пойдут следующие 2 юзера. Когда он забьёт свои поля, то его запись удаляется (вот тут мне непонятно, если его удалять, то что? куда-то должно сохраняться, что он забил свои поля?) и первым становится уже второй юзер, и ему заполняются поля. Т.е. первая запись в бд всегда будет того юзера, чьи поля надо заполнять
то что он забил поля, сохраняется в той же строке, где эти поля. но как только там становится значение допустим "1". выполняется условие выдачи вещи. и только после выдачи, удаляется его строка. "Т.е. первая запись в бд всегда будет того юзера, чьи поля надо заполнять" Вот и суть моего вопроса. Как сделать запрос именно к первой строке? (что бы именно в первую заносились значения о двух "рефералах")
а внести в первую строку $db->Query("INSERT INTO 'table' ORDER BY `id` ASC, LIMIT 1 (user_id, user, ref_1, ref_2) VALUES ('$usid','$usname', NULL, NULL)"); Правильно я понял?
Эм. Нет. Я как-то сейчас не могу придумать более лучший вариант, но можно тем запросом сначала найти id первой записи, затем в условии инсерта использовать этот айди. Да, запрос на нахождение первого id будет лучше вот этот: SELECT MIN(id) FROM `table`
еще одна загвоздка при создании самой бд как оставить пустое значение колонок ref_1 и ref_2? что бы потом сравнивать, если ref_1 == Null, то записываем логин 2-го пользователя туда!? Код (Text): CREATE TABLE IF NOT EXISTS `db_mlm` ( `id` int(11) NOT NULL, `user_id` varchar(10) NOT NULL, `user` int(11) NOT NULL, `ref_1` NULL, `ref_2` NULL , PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT AUTO_INCREMENT=0 CHARSET=cp1251; Так или где то ошибся?