Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
 
4 / 3 / 1
Регистрация: 14.02.2018
Сообщений: 533
1

Warning: Invalid argument supplied for foreach()

01.07.2020, 00:43. Просмотров 198. Ответов 3
Метки нет (Все метки)

как исправить ошибку ?
Warning: Invalid argument supplied for foreach()
Для вот этого кода выводит ошибку
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
echo '<h3 '.(($settings['show_crusts1']=='0' || $pizzatime_is_customizable=='0') ? 'style="display:none;"' : '').'>'.__('Фруктовый', 'pizzatime').'</h3>';
        echo '<div '.(($settings['show_crusts1']=='0' || $pizzatime_is_customizable=='0') ? 'style="display:none;"' : '').' class="pizzatime-ingredient-list" data-use-multiplier="'.(int)in_array('Фруктовый', explode(',',$settings['price_multiplier_sections'])).'">';
        foreach ($crust1 as $crust1) {
            if ($crust1['status']=='0') continue;
            echo '<div class="pizzatime-ingredient">';
            echo '<div class="pizzatime-ingredient-left">';
            if ($crust1['photo']) {
                echo '<img class="pizzatime-preview pizzatime-desc-image" src="'.esc_url($crust1['photo']).'">';
            }
            else {
                echo '<img class="pizzatime-preview" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7">';
            }
            echo '</div>';
            echo '<div class="pizzatime-ingredient-right">';
            echo '<p class="pizzatime-ingredient-name"><span class="pizzatime-ingredient-name-name">'.str_replace('\\','',esc_html__($crust1['name'], 'pizzatime')).'</span><span class="pizzatime-ingredient-name-price"></span></p>';
            echo '<p class="pizzatime-ingredient-description">'.str_replace('\\','',esc_html__($crust1['description'], 'pizzatime')).'</p>';
 
            if ($current_preset1) {
                if ($current_preset1['crust1']==$crust1['id']) {
                    $checked='checked="checked"'; 
                }
                else $checked='';
            }
            else {
                if ($pizzatime_crust_default1==$crust1['id']) { 
                    $checked='checked="checked"'; 
                }
                else $checked='';
            }
 
 
 
            echo '<label class="pizzatime-label pizzatime-rad-0 pizzatime-hidden"><input type="radio" name="pizzatime-input-crusts1['.$crust1['id'].']" data-type="crusts1" data-single="1" data-id="'.$crust1['id'].'" data-price="0" data-price-extra="0" value="0" class="pizzatime-input pizzatime-for-layer" autocomplete="off"><i></i></label>';
            echo '<label class="pizzatime-label pizzatime-rad-3"><input type="radio" name="pizzatime-input-crusts1['.$crust1['id'].']" data-type="crusts1" data-single="1" data-id="'.$crust1['id'].'" data-layer="0" data-layer="0" data-name="'.esc_attr(__($crust1['name'], 'pizzatime')).'" data-price="'.$crust1['price'].'" value="3" '.$checked.' class="pizzatime-input pizzatime-for-layer" autocomplete="off"><i></i></label>';
            echo '</div>';
            echo '</div>';
        }
        echo '</div>';
а для вот этого, все работает нормально
HTML5
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
echo '<h3 '.(($settings['show_crusts']=='0' || $pizzatime_is_customizable=='0') ? 'style="display:none;"' : '').'>'.__('Белый', 'pizzatime').'</h3>';
        echo '<div '.(($settings['show_crusts']=='0' || $pizzatime_is_customizable=='0') ? 'style="display:none;"' : '').' class="pizzatime-ingredient-list" data-use-multiplier="'.(int)in_array('Crusts', explode(',',$settings['price_multiplier_sections'])).'">';
        foreach ($crusts as $crust) {
            if ($crust['status']=='0') continue;
            echo '<div class="pizzatime-ingredient">';
            echo '<div class="pizzatime-ingredient-left">';
            if ($crust['photo']) {
                echo '<img class="pizzatime-preview pizzatime-desc-image" src="'.esc_url($crust['photo']).'">';
            }
            else {
                echo '<img class="pizzatime-preview" src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7">';
            }
            echo '</div>';
            echo '<div class="pizzatime-ingredient-right">';
            echo '<p class="pizzatime-ingredient-name"><span class="pizzatime-ingredient-name-name">'.str_replace('\\','',esc_html__($crust['name'], 'pizzatime')).'</span><span class="pizzatime-ingredient-name-price"></span></p>';
            echo '<p class="pizzatime-ingredient-description">'.str_replace('\\','',esc_html__($crust['description'], 'pizzatime')).'</p>';
 
            if ($current_preset) {
                if ($current_preset['crust']==$crust['id']) {
                    $checked='checked="checked"'; 
                }
                else $checked='';
            }
            else {
                if ($pizzatime_crust_default==$crust['id']) { 
                    $checked='checked="checked"'; 
                }
                else $checked='';
            }
 
 
 
            echo '<label class="pizzatime-label pizzatime-rad-0 pizzatime-hidden"><input type="radio" name="pizzatime-input-crusts['.$crust['id'].']" data-type="crusts" data-single="1" data-id="'.$crust['id'].'" data-price="0" data-price-extra="0" value="0" class="pizzatime-input pizzatime-for-layer" autocomplete="off"><i></i></label>';
            echo '<label class="pizzatime-label pizzatime-rad-3"><input type="radio" name="pizzatime-input-crusts['.$crust['id'].']" data-type="crusts" data-single="1" data-id="'.$crust['id'].'" data-layer="0" data-layer="0" data-name="'.esc_attr(__($crust['name'], 'pizzatime')).'" data-price="'.$crust['price'].'" value="3" '.$checked.' class="pizzatime-input pizzatime-for-layer" autocomplete="off"><i></i></label>';
            echo '</div>';
            echo '</div>';
        }
        echo '</div>';
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
01.07.2020, 00:43
Ответы с готовыми решениями:

Вышла ошибка: Warning: Invalid argument supplied for foreach() in
Всем доброго дня! Сайт на вордпрессе, собирал программист. Сейчас я сисадмин, проблема в том что на...

Warning: Invalid argument supplied for foreach()
Делаю компонент. после вызова $this-&gt;form = $this-&gt;get('Form'); в файле view.html.php во...

Warning: Invalid argument supplied for foreach()
Добрый день уважаемые форумчане! Есть проблема с сайтом. В самописной CMS не работает...

Warning: Invalid argument supplied for foreach() in
Здравствуйте. Помогите с ошибкой разобраться: Warning: Invalid argument supplied for foreach() in...

3
1047 / 754 / 423
Регистрация: 23.08.2015
Сообщений: 2,009
01.07.2020, 01:27 2
ElKros, Ругается что в метод foreach вы передаете нечто отличное от массива.
foreach ($crust1 as $crust1) {
Странно что одноименные переменные. Т.е. по сути вы перебиваете массив его элементом. Может быть и в этом проблема. Но в первую очередь смотрите что у вас лежит в переменной $crust1 до цикла.
0
4 / 3 / 1
Регистрация: 14.02.2018
Сообщений: 533
01.07.2020, 20:42  [ТС] 3
sad67man, спасибо! нашла ошибку

Добавлено через 4 часа 28 минут
sad67man, только вылезла новая ошибка. Для crusts работает и не ругается, а для crusts1 такая же ошибка, как и раннее Warning: Invalid argument supplied for foreach()
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$i=0;
    foreach ( $crusts as $crust ) {
        if ($crust['status']=='0') continue;
        if ($i==0) $class = "";
        else $class = "pizzatime-hidden";
 
        if ((int)$crust['opacity']<100) {
            $style="opacity:".((int)$crust['opacity']/100);
        }
        else $style = "";
 
        $image_url.= '<div id="pizzatime-crusts-'.$crust['id'].'" class="pizzatime-image-container pizzatime-crusts '.$class.'"><img style="'.$style.'" class="pizzatime-image" src="'.esc_url($crust['image']).'"></div>';
        $i++;
    }
 
    $i=0;
    foreach ( $crusts1 as $crust1 ) {
        if ($crust1['status']=='0') continue;
        if ($i==0) $class = "";
        else $class = "pizzatime-hidden";
 
        if ((int)$crust1['opacity']<100) {
            $style="opacity:".((int)$crust1['opacity']/100);
        }
        else $style = "";
 
        $image_url.= '<div id="pizzatime-crusts1-'.$crust1['id'].'" class="pizzatime-image-container pizzatime-crusts1 '.$class.'"><img style="'.$style.'" class="pizzatime-image" src="'.esc_url($crust1['image']).'"></div>';
        $i++;
    }
Добавлено через 1 минуту
sad67man, если поставлю вот такой foreach
PHP
1
 foreach ((array) $crusts1 as $crust1 )
ошибка пропадает, но тогда у меня не работает загрузка картинки

Добавлено через 30 минут
sad67man, и подскажите пожалуйста, у меня есть кнопки выбора нужного продукта. Как можно сделать переключение кнопки между блоком crusts и crusts1 ? То есть чтобы, когда я выбираю элемент из блока crusts1, кнопка из блока crusts отключалась и отображался выбранный элемент из блока crusts1, если она была выбрана раньше ? и наоборот, если выбран элемент из блока crusts1 ранее, то чтобы кнопка отключалась и отображался выбранный элемент из блока crusts.

Добавлено через 3 часа 30 минут
Подскажите пожалуйста, очень хочется разобраться
0
4 / 3 / 1
Регистрация: 14.02.2018
Сообщений: 533
03.07.2020, 15:01  [ТС] 4
Помогите пожалуйста?
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
03.07.2020, 15:01

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Warning: Invalid argument supplied for foreach() in
Здравствуйте. У меня такой код: function categories(){ $query = &quot;SELECT * FROM categories...

Warning: Invalid argument supplied for foreach()
Добрый вечер! Скачала шаблон bt_believe, установка без ошибок. Но при просмотре сайта вылазит...

Warning: Invalid argument supplied for foreach()
Здравствуйте! Недавно наткнулся на ошибку на всех страницах сайта: Warning: Invalid argument...

Warning: Invalid argument supplied for foreach()
Прошу помочь :( Вот строки 46,47 foreach($HTTP_POST_VARS as $i_posvar =&gt;...

Warning: Invalid argument supplied for foreach()
Вынесено из темы https://www.cyberforum.ru/php-beginners/thread1415648.html Такая же ошибка...

Warning: Invalid argument supplied for foreach() in
Скрипт для вк. Ругается на строчку: foreach($GetBoard as $board){ Выше: точно такой же блок, но...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.