Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Помогите с построением цикла foreach.. Очень нужно, Прошу помощи у знатоков помочь мне правильно построить цикл.

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Описание: Помогите с построением цикла foreach.. Очень нужно, Прошу помощи у знатоков помочь мне правильно построить цикл.
denmasterweb
Отправлено: 05 Апреля, 2016 - 11:49:30
Post Id


Новичок


Покинул форум
Сообщений всего: 1
Дата рег-ции: Апр. 2016  


Помог: 0 раз(а)




Веду разработку сайта на CMF Cotonti. Столкнулся с проблемой построения цикла при отправке заявок методом POST и последующей их обработке. Но обо всем по порядку:

У меня на сайте в результате поиска (поиск сделал сам) выдает медиаплощадки в цикле в табличном виде, То есть обычная выдача циклом. В поисковой выдаче медиаплощадок первой колонкой идет чекбокс, далее цена за выход рекламы, количество выходов (инпут, где юзер сам ставит цифру), цена контакта и общая цена за все выходы рекламы. В таблице все подсчеты производятся и выводятся Яваскриптом онлайн, и после перезагрузки данные сохраняются во всех инпутах (использовал SessionStorage).Здесь все нормально.
Проблема начинается при обработке следующего запроса.

Пользователь выбирает понравившиеся ему медиаплощадки (ставит чекбоксы в тех,что ему подходят), и под всеми площадками нажимает кнопку сабмита и отправляет заявки на размещение рекламы.

Во всех инпутах я прописал имена, чтобы можно было споймать их в контоллере $_POST['...'],
так вот в инпут чекбокса мне приходит массив с ID ВЫБРАННЫХ площадок, как мне и нужно, но во все остальные инпуты (цена за выход, общая цена и прочее) приходят все данные, то есть те, из площадок, которые пользователь не выбирал.
Подскажите, пожалуйста,как построить выборку данных именно выбранных чекбоксами площадок (то есть их цена, общая стоимость, количество выходов)??
(Добавление)
Вот кусок кода, где я спотыкаюсь...


PHP:
скопировать код в буфер обмена
  1.  
  2.  
  3. if(isset($_POST['send_orders'])) {  ///Если заявки были отправлены
  4.   if ($usr['id'] < 1)
  5.         {
  6.        
  7.                 cot_redirect(cot_url('message', "msg=930&".$sys['url_redirect'], '', true));
  8.         }  
  9.      else {
  10.    
  11.  $markets = array();
  12.  
  13.  $markets['id'] = $_POST['marketID']; ///// массив с ID нужных мне площадок
  14.  $markets['user_id'] = $_POST['user'];
  15.  $markets['user_name'] = $_POST['user_name'];
  16.  $markets['name_square'] = $_POST['name_square'];
  17.  $markets['cenazavihod'] = $_POST['cenazavihod'];
  18.  $markets['colvihodovtv'] = $_POST['colvihodovtv'];
  19.  $markets['skidkitv'] = $_POST['skidkitv'];
  20.  $markets['cena_kontakta'] = $_POST['cena_kontakta'];
  21.  $markets['obsch_cena'] = $_POST['rezultat'];
  22. $market_ord_value = $db->prep($market_ord_value);  
  23.  
  24.  
  25.  
  26. foreach ($_POST['marketID'] as $id)
  27.     {
  28.         $name_square[$id] = $_POST['name_square'][$id];   //////Ошибка где-то в построении цикла foreach
  29.     }
  30.  
  31.  
  32. echo "<pre>";  
  33.  print_r($name_square[$id]);
  34. echo "</pre>";  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  

Прикреплено изображение (Нажмите для увеличения)
Screenshot_1.png

(Отредактировано автором: 05 Апреля, 2016 - 11:50:38)

 
 Top
Viper
Отправлено: 05 Апреля, 2016 - 13:12:30
Post Id



Активный участник


Покинул форум
Сообщений всего: 4555
Дата рег-ции: Февр. 2007  
Откуда: Симферополь


Помог: 98 раз(а)




PHP:
скопировать код в буфер обмена
  1. foreach ($_POST['id'] as $key => $value) {
  2.         $name_square = array_key_exists($key, $_POST['name_square']) ? $_POST['name_square'][$key] : 0;


-----
Список фильмов с описанием, блекджеком и... для Joomla? -> https://киноархив[dot]com
Демо нового движка для сайта php.su -> php[dot]su, проект на гитхабе
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Программирование на PHP »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB