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 :: Получить значение переменной

 PHP.SU

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


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

> Без описания
Novich
Отправлено: 30 Ноября, 2015 - 14:42:03
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Есть код, который выводит в таблицу данные из БД, в нем имеется checkbox
CODE (htmlphp):
скопировать код в буфер обмена
  1. <input name='check[$tov]' value='$tov' type='checkbox'>

Скажите, пожалуйста, как мне получить значение checkbox и передать его. checkbox зависит от id товара. Методом что ниже не получается его получить.
CODE (htmlphp):
скопировать код в буфер обмена
  1.  <?php
  2. $sumbit = $_POST['submit'];
  3. $ak = $_POST['check[$tov]']; // не знаю как получить значение.
  4. if (isset($submit))
  5. {
  6.  
  7. echo $tov;
  8.  
  9. }else{
  10.   echo "ничего";
  11. }
  12. ?>

(Отредактировано автором: 30 Ноября, 2015 - 14:44:44)

 
 Top
esterio
Отправлено: 30 Ноября, 2015 - 18:13:10
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




 
 Top
Novich
Отправлено: 30 Ноября, 2015 - 19:02:22
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Не получается как Вы написали вывести значение переменной

Получаю данные с БД




PHP:
скопировать код в буфер обмена
  1. echo "<table><tr><td>" . $row['name'] . "</td><td>" . $row['op'] . "</td><td>" . $row['made'] . "</td><td>" . $row['price']  . "</td><td><input name='check[$tov]' value='$tov' type='checkbox'></td></tr></table><br/>";
  2.  

вывожу. Мне необходимо получить каждый id товара для того, чтобы с помощью checkbox'om добавить товар в корзину.
 
 Top
esterio
Отправлено: 30 Ноября, 2015 - 19:21:03
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




 
 Top
Novich
Отправлено: 30 Ноября, 2015 - 19:42:22
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Ошибки нет, как это реализовать, вот в чем вопросУлыбка
(Добавление)
PHP:
скопировать код в буфер обмена
  1. $submit = $_POST['submit'];
  2. $a = $_POST['check'];
  3.  if (isset($submit))
  4.     {
  5.  echo $a;
  6.   }else{
  7.  echo "ничего";


Таким образом получаю id checkbox'a который был отмечен галочкой. Теперь возник другой вопрос, как получить id'ы если галочка стоит не на одном checkbox.
 
 Top
esterio
Отправлено: 30 Ноября, 2015 - 21:39:02
Post Id



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


Покинул форум
Сообщений всего: 5025
Дата рег-ции: Нояб. 2012  
Откуда: Украина, Львов


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




PHP:
скопировать код в буфер обмена
  1. foreach($_POST['check'] as $key=>$value) {
  2.     // ...
  3. }
 
 Top
Novich
Отправлено: 01 Декабря, 2015 - 13:44:03
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




esterio, спасибо Вам за советы.
PHP:
скопировать код в буфер обмена
  1. if (isset($submit)){
  2.    $type = $_POST['check'];
  3.    $imp = implode(',',$type);
  4.    echo $imp;
  5. }else echo 'Ничего';

Вот так получилось, подсказали.
 
 Top
Novich
Отправлено: 01 Декабря, 2015 - 17:13:00
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




PHP:
скопировать код в буфер обмена
  1. $submit = $_POST['submit'];
  2. if (isset($submit)){
  3. $type = $_POST['check'];
  4.    if(isset($type)){
  5.    $imp = implode(',',$type);
  6.    $imp = substr_count($imp,',')+ "1"; // кол-во добавляемого товара в корзину + 1 так как считаю запятые, а их на одну меньше чем чисел)
  7. $strSQL = "SELECT * FROM `tovar`";
  8. $rs = mysql_query($strSQL);
  9.    
  10.     $price = array();
  11.     while($row = mysql_fetch_array($rs)) {
  12.                    $price[] = $row['price'];
  13.         $implode = implode(',',$price);
  14.           echo $implode; // вывод получается 44,44,4,44,4,4,44,4,4,4,44,4,4,4,4,44,4,4,4,4,4,44,4,4,4,4,4,4,4
  15.                
  16.  
  17.        
  18.    
  19.       }
  20.      }else {
  21.           echo "Ничего не выбрано";
  22.   }
  23.  }

В базе 8 товаров, а вывод получается
Цитата:
44,44,4,44,4,4,44,4,4,4,44,4,4,4,4,44,4,4,4,4,4,44,4,4,4,4,4,4,4

цена у каждого товара указана 4.
 
 Top
Novich
Отправлено: 01 Декабря, 2015 - 20:25:28
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Нужно получить цену каждого id, подскажите каким образом?
 
 Top
Novich
Отправлено: 01 Декабря, 2015 - 23:23:22
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




PHP:
скопировать код в буфер обмена
  1. $submit = $_POST['submit'];
  2. if (isset($submit)){
  3. $type = $_POST['check'];
  4.    if(isset($type)){
  5.    $imp = implode(',',$type);
  6.    $imps = substr_count($imp,',')+ "1";
  7.  echo $imps;
  8.  
  9. $strSQL = "SELECT * FROM `tovar`";
  10.  
  11. $rs = mysql_query($strSQL);
  12.    
  13.     $price = array();
  14.     while($row = mysql_fetch_array($rs)) {
  15.                    $price[] = $row['pric'];
  16.  
  17.  
  18.      }
  19.  
  20.  $test=implode(",",$price);
  21. echo $test;
  22. $max  = array_sum($price);
  23. echo $max;
  24.  
  25.  
  26.      }else {
  27.           echo "Ничего не выбрано";
  28.   }
  29. }

Выводится $max, то есть сумма всех id, а мне необходимо получить сумму только тех id которые отмечены галочкой, то есть $imp.
 
 Top
Novich
Отправлено: 02 Декабря, 2015 - 19:33:26
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




С тем что выше разобрался.
есть строка 4,5.5,5,10.5
Как получить данные с правой стороны до первой запятой?
(Добавление)
4,5.5,5,10.5 это содержи переменная.

(Отредактировано автором: 02 Декабря, 2015 - 19:33:59)

 
 Top
Russer
Отправлено: 02 Декабря, 2015 - 20:39:41
Post Id


Гость


Покинул форум
Сообщений всего: 91
Дата рег-ции: Февр. 2015  


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




Novich пишет:
С тем что выше разобрался.
есть строка 4,5.5,5,10.5
Как получить данные с правой стороны до первой запятой?
(Добавление)
4,5.5,5,10.5 это содержи переменная.

PHP:
скопировать код в буфер обмена
  1.  
  2. $str = '4,5.5,5,10.5';
  3. $pos = strripos($str,',');
  4. if ($pos !== false)
  5. {
  6. $per =  substr($str, $pos+1);
  7. echo $per;
  8. }
  9.  

(Отредактировано автором: 02 Декабря, 2015 - 20:44:24)

 
 Top
Novich
Отправлено: 06 Декабря, 2015 - 21:22:20
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Russer, спасибо.
Теперь есть такая задачка.
PHP:
скопировать код в буфер обмена
  1. $test = "1,2,5,8,7,11,50";
  2. $test2 = "1,2,7";
  3. $test2_array = explode(",", $test2);
  4. $str = str_replace(($test2_array,1),"",$test);
  5. echo $str;

Вывод должен быть 5,8,11,50, укажите пожалуйста на ошибку.
 
 Top
DelphinPRO
Отправлено: 07 Декабря, 2015 - 04:01:00
Post Id



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


Покинул форум
Сообщений всего: 7187
Дата рег-ции: Февр. 2012  


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




11 - это две единички. они заменяются респлейсом на пустоту.
(Добавление)
array_diff


-----
Чем больше узнаю, тем больше я не знаю.
 
 Top
Novich
Отправлено: 07 Декабря, 2015 - 04:23:19
Post Id


Новичок


Покинул форум
Сообщений всего: 26
Дата рег-ции: Нояб. 2015  


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




Не получается таким образом получить нужный результат, а именно
Цитата:
5,8,11,50
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Вопросы новичков »


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



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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB