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

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

31. BEUJ - 17 Июня, 2015 - 17:11:09 - перейти к сообщению
Sail пишет:
BEUJ пишет:
Такая же ошибка

А что покажет после 8-й строки var_dump($json);?

CODE (htmlphp):
скопировать код в буфер обмена
  1. string(72078) "{"response":[{"id":10001,"first_name":"Кристина","last_name":"Янкелайц"},{"id":10002,"first_name":"Алёна","last_name":"Бокунь"},{"id":10003,"first_name":"Никита","last_name":"Наумов"},{"id":10004,"first_name":"Татьяна","last_name":"Оборина"},{"id":10005,"first_name":"Anatoly","last_name":"Betekhtin"},{"id":10006,"first_name":"Игорь","last_name":"Захаров"},{"id":10007,"first_name":"Сергей","last_name":"Обухов"},{"id":10008,"first_name":"Яна","last_name":"Слепченко"},{"id":10009,"first_name":"Сергей","last_name":"Кулик"},{"id":10010,"first_name":"Славік","last_name":"Грицище"},{"id":10011,"first_name":"Виталик","last_name":"Баган"},{"id":10012,"first_name":"Никита","last_name":"Кадров"},{"id":10013,"first_name":"Elena","last_name":"Sultanova"},{"id":10014,"first_name":"Шурочка","last_name":"Иванова"},{"id":10015,"first_name":"Михон","last_name":"Сериков"},{"id":10016,"first_name":"Мария","last_name":"Полянцева"},{"id":10017,"first_name":"Даша","last_name":"Баранова"},{"id":10018,"first_name":"Anna","last_name":"Novikova"},{"id":10019,"first_name":"Александра","last_name":"Круглякова"},{"id":10020,"first_name":"DELETED","last_name":"","deactivated":"deleted"},{"id":10021,"first_name":"Сергей","last_name":"Киселев"},{"id":10022,"first_name":"Оксана","last_name":"Бубало"},{"id":10023,"first_name":"Роман","last_name":"Стецков"},{"id":10024,"first_name":"DELETED","last_name":"","deactivated":"deleted"},{"id":10025,"first_name":"Сергей","last_name":"Шахов"},{"id":10026,"first_name":"Анастасия","last_name":"Туршина"},

Выдало всю инфу из файла

Это при таком коде
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-Type: text/html; charset=utf8");
  3. $matches=array(
  4. "Алина",
  5. "Лена",
  6. "Маша",
  7. "Елена",
  8. "Юлия");
  9. $json=file_get_contents($_SERVER['DOCUMENT_ROOT']."/10001_1000.json");
  10. var_dump($json);
  11. $json = iconv('cp1251', 'utf-8', $json);
  12. $k=json_decode($json,1);
  13. foreach($k['response'] as $data){
  14. if(in_array($data['first_name'], $matches)) {
  15. echo "{$data['id']}::{$data['first_name']}<br>";
  16. }
  17. }
  18. ?>

И в конце файла опять выдал ошибку Warning: Invalid argument supplied for foreach() in D:\OpenServer\OpenServer\domains\localhost\index.php on line 13
32. Sail - 17 Июня, 2015 - 17:28:15 - перейти к сообщению
BEUJ, проверьте значение $json после file_get_contents на соответствие формату json...
Скобки все парные, запятые...
echo '<hr>'.$json.'<hr>';
и копирование вывода в редактор помогут это сделать Улыбка
Попробуйте снова весь этот вывод явно присвоить переменной $json в скрипте.
Если сработает, то всё-таки скрипт не в utf...
33. Tyoma5891 - 17 Июня, 2015 - 17:32:57 - перейти к сообщению
Sail пишет:

Если сработает, то всё-таки скрипт не в utf...

а нельзя ли просто напросто BEUJ взять и вэтом же самом редакторе посмотреть в какой кодировке скрипт?) нотепад++ отлично это показывает...
34. BEUJ - 17 Июня, 2015 - 17:37:01 - перейти к сообщению
http://bazdan[dot]esy[dot]es
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. header("Content-Type: text/html; charset=utf8");
  3. $matches=array(
  4. "Алина",
  5. "Лена",
  6. "Маша",
  7. "Елена",
  8. "Юлия");
  9. $json=file_get_contents($_SERVER['DOCUMENT_ROOT']."/10001_1000.json");
  10. $k=json_decode($json,1);
  11. foreach($k['response'] as $data){
  12. if(in_array($data['first_name'], $matches)) {
  13. echo "$data[id]::$data[first_name]<br>";
  14. }
  15. }
  16. ?>

Вот такой скрипт на сайте выводит все нормально, а на локалке выдает пустой лист.
(Добавление)
Tyoma5891 пишет:
Sail пишет:

Если сработает, то всё-таки скрипт не в utf...

а нельзя ли просто напросто BEUJ взять и вэтом же самом редакторе посмотреть в какой кодировке скрипт?) нотепад++ отлично это показывает...


Нажмите для увеличения


Нажмите для увеличения
35. Sail - 17 Июня, 2015 - 17:41:06 - перейти к сообщению
BEUJ пишет:
а на локалке выдает пустой лист.

Однозначно на локалке скрипт в другой кодировке.
Потому и не совпадают имена, заданные в массиве явно и подгруженные.
36. BEUJ - 17 Июня, 2015 - 17:42:47 - перейти к сообщению
Sail пишет:
BEUJ пишет:
а на локалке выдает пустой лист.

Однозначно на локалке скрипт в другой кодировке.
Потому и не совпадают имена, заданные в массиве явно и подгруженные.

У меня почему-то не задается кодировка скрипту.
37. Tyoma5891 - 17 Июня, 2015 - 17:47:37 - перейти к сообщению
BEUJ пишет:

У меня почему-то не задается кодировка скрипту.

изначально при сохранении по умолчанию задается ютф8 без бом, вы где файл сам со скриптом брали?)
38. BEUJ - 17 Июня, 2015 - 17:52:00 - перейти к сообщению
Спасибо большое всем за помощьУлыбка Скачал скрипт с сервера и все заработалоУлыбка

 

Powered by ExBB FM 1.0 RC1