Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.70/40: Рейтинг темы: голосов - 40, средняя оценка - 4.70
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118

Fatal error: Unsupported operand types

14.04.2014, 10:42. Показов 7983. Ответов 15
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем Привет! При переносе сайта c домашнего ноута х64 на рабочий х32 (и там и там wampserver соответствующий) возникают ошибки, например - Fatal error: Unsupported operand types. Всё воскресенье бился с этой напастью, но так ничего и не нашёл. И сервер х32 переустановил, но ничего не поменялось. На х64 всё работает, на х32 вылазят ошибки.... В чём может быть проблема?
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
14.04.2014, 10:42
Ответы с готовыми решениями:

Fatal error: Unsupported operand types in
Каюсь: разворачиваю Битрикс. На одном из шагов установки выдается сообщение смотрим в файлик - что ж там'PHOTO' =>...

Fatal error: Uncaught Error: Call to a member function execute() on null
Не получается у меня побороть эту хрень. Читал и http://phpfaq.ru/pdo#intro и http://php.net/manual/ru/book.pdo.php НЕ пойму я как...

PHP Fatal error: Uncaught Error: Call to undefined function mb_strlen()
У меня в файлах запускаемых кроном используется функция mb_strlen(), когда заметил что скрипт не работает запустил его из консоли, мне...

15
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 11:12
возможно проблема в разных версиях php
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 11:16  [ТС]
Цитата Сообщение от V@D!k Посмотреть сообщение
возможно проблема в разных версиях php
так сервер скачивал с оф.сайта, версии одинаковые. говорят на ноуте х64 могут быть отключен вывод ошибок (хотя не отключал), и версия что массив с числом я складываю. хотя опять таки, по видеоурокам сайт собирал, там всё работало...
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 11:18
как вариант у вас там стоит какой-то if, и на одном компе он идет по одной ветви без ошибки, а на другом по другой- с ошибкой, хотелось бы увидеть код
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 11:22  [ТС]
Цитата Сообщение от V@D!k Посмотреть сообщение
как вариант у вас там стоит какой-то if, и на одном компе он идет по одной ветви без ошибки, а на другом по другой- с ошибкой, хотелось бы увидеть код
с кодами проблем нет. столько их уже наделал-переделал, что теперь бы самому разобраться, где и что

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
function total_items($cart)
{
    $num_items = 0;
    
    if(is_array($cart))
    {
        foreach($cart as $id => $qty)
        {
            $num_items = $num_items + var_dump($qty);
        }
        return $num_items;
    }
}
когда подставил var_dump, то при нажатии на "добавить" вылезло следующее:

array (size=2)
'id' => string '2' (length=1)
'size' => string '9' (length=1)

повторяющееся 20 раз, и две новые ошибки...
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 11:26
Цитата Сообщение от arhat Посмотреть сообщение
$num_items = $num_items + var_dump($qty);
что делает этот код?
если вы хотите добавить элемент в массив, это нужно делать так
PHP
1
$num_items []=$qty
а var_dump вообще для вывода на страницу
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 11:43  [ТС]
Цитата Сообщение от V@D!k Посмотреть сообщение
что делает этот код?
если вы хотите добавить элемент в массив, это нужно делать так
PHP
1
$num_items []=$qty
а var_dump вообще для вывода на страницу
Если вставить $num_items []=$qty, то:

Warning: Cannot use a scalar value as an array in ......


И этот код подсчитывает общее количество товара в корзине.
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 11:47
Цитата Сообщение от arhat Посмотреть сообщение
И этот код подсчитывает общее количество товара в корзине.
тогда вам, судя по логике, нужно просто делать так
PHP
1
 $num_items = $num_items + 1
а что у вас хранится в $qty?
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 11:54  [ТС]
Цитата Сообщение от V@D!k Посмотреть сообщение
тогда вам, судя по логике, нужно просто делать так
PHP
1
 $num_items = $num_items + 1
а что у вас хранится в $qty?
Нет, так не выходит. В корзине сразу появилось 25 товаров при выводе на основной странице. А при заходе в корзину куча ошибок, в частности тоже с операндами

Fatal error: Unsupported operand types in C:\wamp\www\MyShop\cart_fns.php on line 78

в этом коде:

PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
function total_price($cart)  
{
    $total_price = 0.0;
    
    db_connect();
    
    if(is_array($cart))
    {
        foreach($cart as $id => $qty)
        {
            
            $query = "SELECT price FROM products WHERE id='$id'  ";
            $result = mysql_query($query);
            if($result)
            {
                $item_price = mysql_result($result,0,'price');
                $total_price +=  $item_price * $qty;
            }
        }
        return $total_price;
    }
}
а при нажатии на "добавить" ещё такая ошибка:

Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 7 in C:\wamp\www\MyShop\cart_fns.php on line 77

в этом же коде
PHP
1
2
            77    $item_price = mysql_result($result,0,'price');
            78   $total_price +=  $item_price * $qty;
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 11:59
я не знаю откуда вы это взяли, но у вас там куча ошибок, и я повторю вопрос: что хранится в $qty?
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 12:17  [ТС]
Цитата Сообщение от V@D!k Посмотреть сообщение
я не знаю откуда вы это взяли, но у вас там куча ошибок, и я повторю вопрос: что хранится в $qty?
V@D!k, в переменной $qty хранится количество конкретного выбранного товара.

PHP
1
$num_items = $num_items + $qty;
здесь в цикле $num_items хранит количество уже выбранного товара, а $qty прибавляет новое количество следующего выбранного товара.
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 12:19
Цитата Сообщение от arhat Посмотреть сообщение
V@D!k, в переменной $qty хранится количество конкретного выбранного товара.
сомневаюсь, попробуйте внутри цикла сделать
PHP
1
echo $qty; echo $num_items
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 12:28  [ТС]
Notice: Array to string conversion in (это там echo $qty), и повторяется это замечание 20 раз....

и эти ошибки здесь: $item_price = mysql_result($result,0,'price'); - Warning: mysql_result(): Unable to jump to row 0 on MySQL result index 7 in...
$total_price += $item_price * $qty; - Fatal error: Unsupported operand types in.... (здесь снова на $qty ругается)

но интересно, что в адресной строке стал выбранный размер появляться, над которым как раз и бьюсь уже месяца два

index.php?view=add_to_cart&id=2&size=22
0
 Аватар для V@D!k
249 / 249 / 98
Регистрация: 26.07.2010
Сообщений: 1,685
14.04.2014, 12:42
вы складываете массив с числом, вот поэтому и ошибки.я думаю, что после выборки из базы в переменную вам заносится массив, а не число, в этом и проблема. попробуйте сделать так
PHP
1
$qty['название поля']
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
14.04.2014, 18:02  [ТС]
сделал так, поле - id товара:

PHP
1
2
3
$num_items = $num_items + $qty['id'];
 
$total_price +=  $item_price * $qty['id'];
теперь на основной странице в корзие 154 товара на общую сумму 90288 руб

при этом в корзину ничего не добавляется. а если зайти в саму корзину, то здесь одна из ошибок с операндом здесь:

PHP
1
<td align="center">  <?=number_format($product['price'] * $quantity ,2); ?> руб</td>

здесь тоже что то с количеством не то. здесь идёт присвоение:

PHP
1
2
3
4
foreach ($_SESSION['cart'] as $id => $quantity):
         $product = get_product($id);
         
         $b = get_sizes($id);
0
2 / 2 / 0
Регистрация: 23.03.2014
Сообщений: 118
26.04.2014, 00:43  [ТС]
Как оказалось, ошибки появлялись только в браузере файрфокс на нетбуке. Попробовал сегодня на IE - всё нормально. На ноуте файрфокс открывал всё нормально. Для чистоты эксперимента загрузил сайт на бесплатный хостинг, там тоже всё работает нормально, без ошибок. Почистил нетбук всеми доступными средствами, и теперь везде работает без ошибок
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
26.04.2014, 00:43
Помогаю со студенческими работами здесь

PHP Fatal error: Uncaught Error: Call to undefined function curl_init()
Всем привет! Знаю, проблема обсосана со всех сторон. Получаю вот это: PHP Fatal error: Uncaught Error: Call to undefined...

Fatal error: Uncaught Error: Call to undefined function can_upload()
Собрал конструктор тут не большой ... В БД отлично все уходит но фотки в папку не сохраняются почему то. Пишет неопределенная функция ......

Fatal error: Uncaught Error: Call to undefined function get_products()
Осваиваю разработку интернет магазина по видеокурсу, но возникают ошибки, которые никак не могу исправить.Текст ошибки &quot;Fatal error:...

Fatal error: Uncaught Error: Call to undefined function mysql_query()
Всем привет,ребят подскажите что за ошибка? что нужно сделать? Пишет ошибку Fatal error: Uncaught Error: Call to undefined function...

Fatal error: Uncaught Error: Call to undefined function mcrypt_ecb()
&lt;?php error_reporting(E_ALL &amp; ~E_NOTICE); // Шифруем пароль $user_password = &quot;gfkjxrb99&quot;; $key = &quot;Это секретный...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Новые блоги и статьи
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Access
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
Создание Single Page Application на фреймах
krapotkin 16.11.2025
Статья исключительно для начинающих. Подходы оригинальностью не блещут. В век Веб все очень привыкли к дизайну Single-Page-Application . Быстренько разберем подход "на фреймах". Мы делаем одну. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru