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
Форумы портала PHP.SU :: Версия для печати :: Ассоциативный массив...помощь разбираться с ошибкой
Форумы портала PHP.SU » » Вопросы новичков » Ассоциативный массив...помощь разбираться с ошибкой

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

1. Valeriya12 - 26 Июня, 2014 - 13:25:59 - перейти к сообщению
Я хочу делать ассоциативный массив при помощи MySqli.

Когда у меня был файл, все было просто:

PHP:
скопировать код в буфер обмена
  1. $file = fopen("users.txt", "r") or exit("cannot open file");
  2. $users = Array();
  3.  
  4. while(!feof($file))
  5. {
  6.         $user=explode("|", fgets($file));
  7.         $users[trim($user[0])] = trim($user[1]);
  8. }
  9.  
  10. fclose($file);


Но теперь я работаю посредством MySqli... насколько я понимаю, fetch_object это как fgets только для MySqli. Читает строку из таблицы.


PHP:
скопировать код в буфер обмена
  1. $sql = "SELECT first_name, password FROM users";
  2. $result = $con->query($sql);
  3.  
  4. if($result)
  5. {
  6.         while($row = $result->fetch_object())
  7.         {
  8.                 $user=array();
  9.                 $user[]=$row;
  10.                 $users[trim($user[0])] = trim($user[1]);
  11.         }
  12.  
  13.         $result->free();
  14. }
  15.  
  16. var_dump($users);
  17. $con->close();
  18.  


Получаю "( ! ) Warning: trim() expects parameter 1 to be string, object given in C:\wamp\www\maayan\store\users.php on line 20
"

Как можно это исправить?
2. LIME - 26 Июня, 2014 - 13:41:46 - перейти к сообщению
PHP:
скопировать код в буфер обмена
  1. $users=[];
  2. while($row = $result->fetch_row())
  3. {
  4.     $users[trim($row[0])] = trim($row[1]);
  5. }
3. Valeriya12 - 26 Июня, 2014 - 14:49:48 - перейти к сообщению
Спасибо большое!!

 

Powered by ExBB FM 1.0 RC1