|
|
|
|
|
для: Лена
(14.03.2010 в 13:23)
| | Какова роль администратора в добавлении?
Если только администратор имеет право выставить (добавить) пять товаров для торгов, то почему выбор/сброс товара обуславливается условием if(!$count_auc<6)?
Что за правила на этом аукционе?
Еще раз повторяю, это:
<form method='post' action='auction_details.php?auction_id=" . $row["auction_id"] . "&idset=" . $row["auction_id"] . "'>
в корне не верно! | |
|
|
|
|
|
|
|
для: sim5
(14.03.2010 в 13:17)
| | У меня так получилось:
<?php
if(!$count_auc<6){
$id = isset($_GET['idset']) ? intval($_GET['idset']) : intval($_GET['auction_id']);
if(isset($_GET['idset']))
mysql_query("UPDATE anticvar_auctions SET intrest = intrest ^ 1 WHERE auction_id = " . $id);
$s = "SELECT name, auction_id,intrest
FROM anticvar_auctions
WHERE auction_id =" . $id;
$query = mysql_query($s);
if(!$query) exit(mysql_error());
$row = mysql_fetch_assoc($query);
echo "
<table width=100% border=0 cellspacing=3 cellpadding=3 class='border'>
<tr><td colspan = 4>
<form method='post' action='auction_details.php?auction_id=" . $row["auction_id"] . "&idset=" . $row["auction_id"] . "'>
<input type='checkbox' name='intrest'
onclick='this.form.submit()' ".($row["intrest"] ? 'checked' : '') . "/>
Поместить товар в раздел
<span style = 'font-weight:bold;color:#F00;'>\"Это интересно\"</span>
</form>
</td></tr></table>
";
}
?>
|
Если я пытаюсь добавить шестой товар, то чекбокс для него выводится. Хотя на самом деле этот чекбокс не должен выводиться. | |
|
|
|
|
|
|
|
для: Лена
(14.03.2010 в 13:10)
| | Значит вы допустили ошибку в логике, скорее всего не верна проверка запросов - то что у меня в примере, годится только для примера, а не для реальной страницы. ID для состояния должен передваться именно при отправке формы, а других запросов здесь не должно быть. | |
|
|
|
|
|
|
|
для: sim5
(14.03.2010 в 12:52)
| | Самое интересное, что с этой путаницей - работает. Без нее - нет. | |
|
|
|
|
|
|
|
для: Лена
(14.03.2010 в 12:36)
| | <form method='post' action='auction_details.php?auction_id=" . $row["auction_id"] . "&idset=" . $row["auction_id"] . "'>
тогда путаница получается. | |
|
|
|
|
|
|
|
для: Лена
(14.03.2010 в 12:25)
| | На хостинге сначала не работало. Пришлось немного поменять гет-параметры, которые передает форма:
<form method='post' action='auction_details.php?auction_id=" . $row["auction_id"] . "&idset=" . $row["auction_id"] . "'>
Одна проблема осталась.
Допустим, у нас в разделе "Это интересно" уже есть 5 товаров. Мы хотим снять чекбокс с одного из товаров, но мы этого сделать не можем, потому что у нас теперь не видно вообще этогочекбокса. Надо, получается, еще куда-то запоминать id`ы тех чекбоксов, которые отмечены и для них выводить чекбокс. | |
|
|
|
|
|
|
|
для: sim5
(14.03.2010 в 12:19)
| | Тогда все получилось. Большое спасибо. Можно жениться :)))
<?php
$q = "SELECT COUNT(*) FROM anticvar_auctions WHERE intrest = 1";
$res = mysql_query($q);
if(!$res) exit(mysql_error());
$count_auc = mysql_result($res,0);
if($count_auc<5){
$id = isset($_GET['idset']) ? intval($_GET['idset']) : intval($_GET['auction_id']);
if(isset($_GET['idset']))
mysql_query("UPDATE anticvar_auctions SET intrest = intrest ^ 1 WHERE auction_id = " . $id);
$s = "SELECT name, auction_id,intrest
FROM anticvar_auctions
WHERE auction_id =" . $id;
$query = mysql_query($s);
if(!$query) exit(mysql_error());
$row = mysql_fetch_assoc($query);
echo "
<table width=100% border=0 cellspacing=3 cellpadding=3 class='border'>
<tr><td colspan = 4>
<form method='post' action='?idset=" . $row["auction_id"] . "'>
<input type='checkbox' name='intrest'
onclick='this.form.submit()' ".($row["intrest"] ? 'checked' : '') . "/>
Поместить товар в раздел
<span style = 'font-weight:bold;color:#F00;'>\"Это интересно\"</span>
</form>
</td></tr></table>
";
}
?>
|
| |
|
|
|
|
|
|
|
для: Лена
(14.03.2010 в 11:55)
| | Ну значит и проблемы нет. | |
|
|
|
|
|
|
|
для: sim5
(14.03.2010 в 07:22)
| | Согласно условию задачи, ставить чекбоксы может только админ сайта - один человек. Тут, наверное, достаточно проверки, показывать или не показывать ему чекбокс. | |
|
|
|
|
|
|
|
для: Лена
(13.03.2010 в 22:56)
| | Ну вот, оказывается предполагать нужно было о гареме. )
Перед отправкой формы клиенту решать, может ли он вообще иметь инструмент выбора (чекбокс). Аукцион, значит в режиме реального времени пользователь N должен видеть положение с квотой на сервере, т.е. - Ajax.
Хотя реальность времени для сети с ее задержками... думаю, что все равно сервер должен проверять возможно ли добавление, и одному из выбравших, лишнему, выдать сообщение. | |
|
|
|
|