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 :: Исчезает переменная $_GET

 PHP.SU

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


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

> Описание: При использовании функции header не возврощяет переменную из глобально массива $_GET
zorro_zorro
Отправлено: 15 Октября, 2015 - 10:45:24
Post Id


Новичок


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


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




Коллеги, нужна Ваша помощь. Я новичок, думаю что туплю но где протупил разобраться нет сил уже.
Ситуация такая. Создаю интернет магазин. На странице определенного вида товаров, у которых определенный идентификатор, есть кнопка ссылка на передачу товара в "Корзину". При нажатии товар передается в корзину и по идее должен при срабатывании редиректа вернуться на эту страницу. Товар в корзину попадает, но на пустую страницу не могу понять почему. После отработки header исчезает переменная $cat.

Вот функция:
case ('add_to_cat'):
$id = $_GET['id'];
$cat = $_GET['cat'];от
$add_item = add_to_cat($id);
$_SESSION['total_items'] = total_items($_SESSION['cart']);
$_SESSION['total_price'] = total_price($_SESSION['cart']);
header('Location: index.php?view=cat&cat='.$cat);
break;
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 13:18:29
Post Id


Участник


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


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




zorro_zorro
При срабатывании header('Location: index.php?view=cat&cat='.$cat);
переменная cat будет доступна в index.php в $_GET['cat']
 
 Top
zorro_zorro
Отправлено: 15 Октября, 2015 - 13:42:32
Post Id


Новичок


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


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




В index.php?view=cat&cat='.$cat до передачи в карзину передает
Array ( [view] => cat [cat] => 1 )
после передачи в карзину
Array ( [view] => cat [cat] => )
Помогите как выйти из сетуации
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 13:48:59
Post Id


Участник


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


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




zorro_zorro
Покажите как передаете товар в корзину.
 
 Top
zorro_zorro
Отправлено: 15 Октября, 2015 - 13:51:28
Post Id


Новичок


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


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




function add_to_cat($id)
{
if(isset($_SESSION['cart'][$id]))
{
$_SESSION['cart'][$id]++;
return true;
}
else
{
$_SESSION['cart'][$id] = 1;
return true;
}

return false;
}


function total_items($cart)
{
$num_items = 0;

if(is_array($cart))
{
foreach($cart as $id => $qty)
{
$num_items = $num_items + $qty;
}
}

return $num_items;
}

function total_price($cart)
{
$total_price = 0.00;

db_connect();

if(is_array($cart))
{
foreach($cart as $id => $qty)
{
$query = "SELECT price FROM sdvd_products WHERE id='$id'";
$result = mysql_query($query);
if($result)
{
$item_price = mysql_result($result,0,'price');
$total_price = $total_price + $item_price * $qty;
}
}
}
return $total_price;

}
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 14:00:11
Post Id


Участник


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


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




Судя по коду, берите переменную саt из $_SESSION['cart']
 
 Top
DeepVarvar Супермодератор
Отправлено: 15 Октября, 2015 - 14:09:19
Post Id



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


Покинул форум
Сообщений всего: 10377
Дата рег-ции: Дек. 2008  
Откуда: Альфа Центавра


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




zorro_zorro
Прикреплено изображение (Нажмите для увеличения)
options.png
 
 Top
zorro_zorro
Отправлено: 15 Октября, 2015 - 14:59:28
Post Id


Новичок


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


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




PHP:
скопировать код в буфер обмена
  1.  
  2. function add_to_cat($id)
  3. {
  4. if(isset($_SESSION['cart'][$id]))
  5. {
  6. $_SESSION['cart'][$id]++;
  7. return true;
  8. }
  9. else
  10. {
  11. $_SESSION['cart'][$id] = 1;
  12. return true;
  13. }
  14.  
  15. return false;
  16. }
  17.  
  18.  
  19. function total_items($cart)
  20. {
  21. $num_items = 0;
  22.  
  23. if(is_array($cart))
  24. {
  25. foreach($cart as $id => $qty)
  26. {
  27. $num_items = $num_items + $qty;
  28. }
  29. }
  30.  
  31. return $num_items;
  32. }
  33.  
  34. function total_price($cart)
  35. {
  36. $total_price = 0.00;
  37.  
  38. db_connect();
  39.  
  40. if(is_array($cart))
  41. {
  42. foreach($cart as $id => $qty)
  43. {
  44. $query = "SELECT price FROM sdvd_products WHERE id='$id'";
  45. $result = mysql_query($query);
  46. if($result)
  47. {
  48. $item_price = mysql_result($result,0,'price');
  49. $total_price = $total_price + $item_price * $qty;
  50. }
  51. }
  52. }
  53. return $total_price;
  54.  
  55. }
  56.  
  57.  

(Добавление)
andrewkard пишет:
Судя по коду, берите переменную саt из $_SESSION['cart']


из функции add_to_cat
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 15:12:13
Post Id


Участник


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


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




zorro_zorro пишет:
При нажатии товар передается в корзину и по идее должен при срабатывании редиректа вернуться на эту страницу.

Т.е. при обновлении страницы, товара в корзине нет? Или что?
 
 Top
zorro_zorro
Отправлено: 15 Октября, 2015 - 15:18:11
Post Id


Новичок


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


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




andrewkard пишет:
zorro_zorro пишет:
При нажатии товар передается в корзину и по идее должен при срабатывании редиректа вернуться на эту страницу.

Т.е. при обновлении страницы, товара в корзине нет? Или что?


Товар в корзине есть.
при header('Location: index.php?view=cat&cat='.$cat);
возврощает на пустую страницу т.е. index.php?view=cat&cat=
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 16:57:14
Post Id


Участник


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


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




andrewkard пишет:
Товар в корзине есть.
при header('Location: index.php?view=cat&cat='.$cat);
возврощает на пустую страницу т.е. index.php?view=cat&cat=

Значит в этот момент переменная $cat пустая
 
 Top
zorro_zorro
Отправлено: 15 Октября, 2015 - 18:23:50
Post Id


Новичок


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


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




Что можете посоветовать?
 
 Top
andrewkard
Отправлено: 15 Октября, 2015 - 18:28:11
Post Id


Участник


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


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




zorro_zorro
Смотрите, проверяйте. Что в гет параметрах в момент вызова функции header
$cat = $_GET['cat']; - тут тоже пусто, я так понимаю.
Значит не передаете.
Либо передайте параметр, либо в index.php возьмите эту переменную из сессии
 
 Top
Faraon-san
Отправлено: 15 Октября, 2015 - 22:50:50
Post Id



Посетитель


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


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




перед header вставь и напиши что выдаст
 
 Top
zorro_zorro
Отправлено: 16 Октября, 2015 - 00:40:20
Post Id


Новичок


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


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




Faraon-san пишет:
перед header вставь и напиши что выдаст



NULL. выдает. Хочу принять то чего там нет(
(Добавление)
Спасибо всем. andrewkard тебе отдельное спасибо. Воспользовался твоим советом и решил задачку. Передал это чудо используя сессии. Может кто что-то еще посоветует буду благодарен.
 
 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