Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Не срабатывает сравнение id категорий

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Wotkak



Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте, помогите пожалуйста.
2 таблицы, Первая хранит название категорий и  id.
Вторая, новости с заголовком, кратким, полным описанием и id категорий через запятую в соответствующем столбце.  
 
$add->allCat(); // получение списка категорий, всё отлично выводится id и name
        $arr=$add->allCat(); // присвоил переменной массив, состоящий из id категорий
 
        var_dump($arr); // вывод для проверки, всё отлично
array(4) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "2"
  [2]=>
  string(1) "3"
  [3]=>
  string(1) "4"
}
 
        $edit[0]['categoryId']) // здесь хранятся через запятую id, которые были получены из таблицы новостей, поля категории соответствующей новости, в данном случае 1,3
 
        $pic = explode(",", $edit[0]['categoryId']); // присваиваю массив из  id категорий
 
        var_dump($pic); //вывожу для проверки, всё отлично:
 
array(2) {
  [0]=>
  string(1) "1"
  [1]=>
  string(1) "3"
}
 
 
        for($i=0;$i<=count($arr);$i++) // через цикл провожу проверку: равен ли id с первой таблицы id со второй(новости), если да, то вывести эти id с первой таблицы(категории).
 
        {
 
            if($arr[$i]['id']==$pic[$i]['categoryId']) {var_dump($arr[$i]['id']);}
        }
 
Выводит NULL (((

Всего записей: 11 | Зарегистр. 27-02-2015 | Отправлено: 14:58 11-03-2016
bordellinoff

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
@Wotkak
 
всё правильно выводит; в цикле $arr[$i] равно 1, 2, 3 и т. д. и тип стринг, а не массив (кстати тоже самое действительно и для $pic[$i]). поэтому $arr[$i][ 'id' ] не существует, т. е. $arr[$i] и есть $arr[$i][ 'id' ].
 
for ( $i = 0; $i <= count($arr); $i++ )
{  
    $arrID = $arr[$i];
    $picID = $pic[$i];
    
    // $arr[$i] = "1" или "2" и т. д. (string), а не массив
    if( $arrID == $picID )
    {
        var_dump($arrID );
    }  
}

Всего записей: 50 | Зарегистр. 13-10-2013 | Отправлено: 15:50 13-03-2016 | Исправлено: bordellinoff, 15:51 13-03-2016
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Не срабатывает сравнение id категорий


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru