Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5. На примерах. Авторы: Кузнецов М.В., Симдянов И.В., Голышев С.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Вопрос? Груповые операции
 
 автор: vbps   (23.11.2006 в 03:24)   письмо автору
 
 

Нужно сделать груповое редактирование прайса.
Изменяться должны только поля price.
mysql ячейки : id title price

подскажите пример, а то уже и не знаю с чего начать.

изменения вношу 2-3 раза в неделю, запарился для каждого наименования цены ставить.

   
 
 автор: Trianon   (23.11.2006 в 09:28)   письмо автору
 
   для: vbps   (23.11.2006 в 03:24)
 

нужно использовать массивы в именах полей формы.

   
 
 автор: vbps   (23.11.2006 в 13:41)   письмо автору
 
   для: Trianon   (23.11.2006 в 09:28)
 

Можно хоть какойнибудь самый простой пример? Дальше попробую сам разобраться.

   
 
 автор: Loki   (23.11.2006 в 13:47)   письмо автору
 
   для: vbps   (23.11.2006 в 03:24)
 

а по какому принципу изменяются цены?

   
 
 автор: vbps   (23.11.2006 в 13:49)   письмо автору
 
   для: Loki   (23.11.2006 в 13:47)
 

Просто голые числа.

   
 
 автор: Loki   (23.11.2006 в 13:57)   письмо автору
 
   для: vbps   (23.11.2006 в 13:49)
 

а... дошло что вы хотите...
генерируете html с полями ввода
<?
$result
=mysql_query("SELECT id, price, name FROM table");
while(
$goods=mysql_fetch_array($result))
{
 echo 
$goods['name']"<input type=text name=price[".$goods['id']."] value='".$goods['price']."'>";
}


а потом обработчик
<?
foreach($_POST['price'] as $id=>$price)
{
mysql_query("UPDATE table SET price=$price WHERE id=$id");
}

   
 
 автор: vbps   (23.11.2006 в 15:10)   письмо автору
 
   для: Loki   (23.11.2006 в 13:57)
 

Еще вопросик, только с checkbox.
Рещил сделать как писали выше по анелогии добавив пару строк:

foreach($_POST['active'] as $id=>$active) { 
if ($active="on") $active=1;
$active=intval($active);
mysql_query("UPDATE ".$db["prefix"]."prod SET active=$active WHERE id=$id"); 
}


<input type=checkbox name=active[".$R["id"]."] ".$checked.">


Отмечает все нормально, а вот отмеченые снимать не хочет, т.е. 1 не меняет на ноль пробовал value подставлять 1 и 0 с проверкой при передаче, в зависимости от того что взято из базы, и тоже ничего.

Как можно рещить эту задачу?

   
 
 автор: Trianon   (13.12.2006 в 09:39)   письмо автору
 
   для: vbps   (23.11.2006 в 15:10)
 

В POST никогда не попадут неотмеченные чекбоксы.
Так что делать цикл по POST в расчете что-то снять - бессмысленно.
Цикл нужно делать по списку всех checkbox-ов.

   
 
 автор: vbps   (13.12.2006 в 12:47)   письмо автору
 
   для: Trianon   (13.12.2006 в 09:39)
 

а как быть тогда, все checkbox то заранее не известны, а где то я видел похожее.

   
 
 автор: Trianon   (13.12.2006 в 13:17)   письмо автору
 
   для: vbps   (13.12.2006 в 12:47)
 

Поскольку скрипт каким-то образом формирует все элементы формы, в т.ч. и checkbox , то они ему известны все.

   
 
 автор: vbps   (12.12.2006 в 20:09)   письмо автору
 
   для: Loki   (23.11.2006 в 13:57)
 

Можно ли тоже через checkbox? для записи значений 1 или 0 и возможна ли проблема из-за 0 хотя intval сам ставит ноль если ничего нет.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования