2016-07-10 3 views
1

Я извлекаю json данные из таблицы под названием properties. Название колонки - attr, и в нем есть размер, спальни и тип prop-type.PHP: Notice: Неопределенное свойство: stdClass ::

$q= mysqli_query($connect,"SELECT * FROM properties"); 
    $savemyval = array(); 
    while($row= mysqli_fetch_assoc($q)){ 
     $data = json_decode($row['attr']); 
      //var_dump($data); 
      if($proptpe == $data->proptype){ 
       $savemyval[] = $row['id']; 

      } 
    } 

Запрос данных, как выше, если я var_dump это то, что я получаю

object(stdClass)[3] 
    public 'bedrooms' => string '5' (length=1) 
    public 'proptype' => string 'residential' (length=11) 
object(stdClass)[4] 
    public 'bedrooms' => string '4' (length=1) 
    public 'proptype' => string 'commercial' (length=10) 
object(stdClass)[3] 
    public 'size' => string '16000' (length=5) 
    public 'prop-type' => string 'commercial' (length=10) 

в var_dump я получить правильные данные, но, когда я пытаюсь получить proprtype, если его более чем 1 это дает мне ошибку

PHP : Notice: Undefined property: stdClass::

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

ответ

0

Потому что в вашем массиве вы не proptype на второй индекс

попробовать, как этот

if(isset($data['proptype']) && $proptpe == $data->proptype){ 
     $savemyval[] = $row['id']; 

} 
+0

это то, что я получаю Фатальная ошибка: Не удается использовать объект типа StdClass как массив – Sikander

Смежные вопросы