|
|
|
| Вообщем есть задумка создать онлайн аукцион, у кого какие идеи?
Условия таковы, например есть 3 лота
1 лот / 2лот / 3 лот
время на ставки / время на ставки / время на ставки
время разное, на каждый лот, и + такое условие, если кто-то из участников сделал ставку, то у всех время добавляется на какую то велечину в зависимости от лота, какие идеи по осуществлению, язык и методы:) | |
|
|
|
|
|
|
|
для: chexov
(12.10.2008 в 17:43)
| | А какие тут идеи ждете? Задача простецкая!
Самое сложное что я тут вижу - запрос, который тоже проще простого
UPDATE table_name SET time=time+INTERVAL '10' MINUTE
|
| |
|
|
|
|
|
|
|
для: ddhvvn
(12.10.2008 в 19:20)
| | А по-моему, есть довольно интересная проблема.
Как не допустить затягивания всего процесса, когда раз в десять минут поочередно одна из сторон будет поднимать ставку на один пункт. | |
|
|
|
|
|
|
|
для: Trianon
(12.10.2008 в 19:47)
| | Ммм.... Вам конечно виднее, а я немного не понял..
или Вы про вариант, если там будет лотов, как на eBay? ))
потому что если 10 лотов, то я сомневаюсь, что такая операция будет затягиваться...
и опять же 10 мин я от себя вставил ))
может там 2 дня надо
или я опять не про то, а Вы не про загрузку системы сказали, а про то что лоты могут существовать очень долго? ) | |
|
|
|
|
|
|
|
для: ddhvvn
(12.10.2008 в 21:11)
| | Конечно не про загрузку.
Реально то как? Аукционатор три раза молотком стукнул и всё. Кто не успел - тот опоздал.
В сети... в сети бо большому счету всё то же самое. Но интервалы растянуты изрядно по сравнению с.
каждый такой шаг будет продлевать процесс на минуты, часы и т.д. При чем каждый будет стремиться ответить как можно позже, чтоб конкурент опоздал. | |
|
|
|
|
|
|
|
для: Trianon
(12.10.2008 в 21:24)
| | Нет, это понятно!
Но автор то хочет именно так!
Так что, как говорится, это уже совсем другая история! =)) | |
|
|
|
|
|
|
|
для: ddhvvn
(12.10.2008 в 21:55)
| | пример аукциона http://gagen.ru в частности меня интересуют счетчики времени(таймеры) которые существуют сами по себе, т.е у всех они показывают одинаковое время, на разные лоты по своему, как такие счетчики осуществить? | |
|
|
|
|
|
|
|
для: chexov
(14.10.2008 в 06:47)
| | есть предложения? | |
|
|
|
|
|
|
|
для: chexov
(16.10.2008 в 04:46)
| | уважаемые, неужели никто не предположит? | |
|
|
|
|
|
|
|
для: chexov
(12.10.2008 в 17:43)
| |
<html>
<head>
<title>Аукцион</title>
</head>
<body>
<span id="timer" onclick="raise()">00:10</span><br/>
<span id="price" onclick="raise()">154</span> руб.
<script type="text/javascript" src="jquery-1.2.6.min.js"></script>
<script type="text/javascript">
interval = setInterval(ch_timer, 1000);
function ch_timer() {
var time = $("#timer").text().split(":");
var m = parseInt(time[0], 10);
var s = parseInt(time[1], 10);
if ( m == 0 && s == 0 ) {
$("#timer").text("Торги кончились!");
clearTimeout(interval);
return;
}
if ( s == 0 ) {
m--;
s = 60;
}
s--;
if ( m.toString().length == 1 ) m = "0"+m;
if ( s.toString().length == 1 ) s = "0"+s;
$("#timer").text(m+":"+s);
}
function raise() {
var time = $("#timer").text().split(":");
var m = parseInt(time[0], 10);
var s = parseInt(time[1], 10);
if ( m == 0 && s == 0 ) {
$("#timer").text("Торги кончились!");
clearTimeout(interval);
return;
}
s += 10; // добавляем 10 секунд к таймеру
if ( s > 59 ) {
s -= 60;
m++;
}
if ( m.toString().length == 1 ) m = "0"+m;
if ( s.toString().length == 1 ) s = "0"+s;
$("#timer").text(m+":"+s);
$("#price").text(parseInt($("#price").text(), 10) + 1); // добавляем 1 рубль к цене
}
</script>
</body>
</html>
|
Чтобы синхронизировать таймеры для всех, нужно начальное значение таймера и цены брать аяксом с сервера. И, соответственно, каждые несколько секунд проверять аяксом таймер и цену. При клике на цену/таймер, увеличивать его себе на странице и отправлять новые данные аяксом на сервер. Всё просто. | |
|
|
|