PHP/MySQL | Задание 60
Ошибка при размещении xml файлов в папке: kinomonster/xml_files/movies.xml.
Warning: simplexml_load_file(): I/O warning : failed to load external entity "xml_files/movies.xml" in /home/oleg/www/kinomonster/index.php on line 3
Error: Cannot create ovject
Если вынести xml файл movies.xml в корень (kinomonster/movies.xml) - все работает.
В чем может быть причина?
6 ответов
Путь к xml файлу в скрипте прописываете точно верный?
Так точно, путь верный. Да и в Sublime Text плагин стоит, помогающий прописать путь.
Ради интереса попробовал скачать исходный код из задания 62 и распаковал содержимое папки source/kinomonster в папку C:\xampp\htdocs\kinomonster\ и все пути корректно видит. Может слеш попробовать поставить перед xml_files, т.е.:
$xml = simplexml_load_file("/xml/movies.xml") or die("Error: Cannot create object");
Были испробованы все возможные варианты прописывания пути - результат тот же, при условии нахождения xml фалов во вложенных папках - "Не удалось загрузить внешнюю сущность". Думаю дело в настройках Xampp под Linux (в каком нибудь конфиге нужно дописать что то или раскоментировать.) Рад что данная ошибка не критична и можно продолжать курс, однако все равно покоя не дает =).
Вопрос снят, разобрался. Может кому еще пригодиться. Дело не в конфигах xampp, а в правах доступа к файлам и вложенным в проект папкам в Linux. Для того что бы xml файл читался из вложенной директории (kinomonster/xml_files/movies.xml), необходимо этой директории назначить право Чтения и Записи для User и право Выполнения для Other (остальные):sudo chmod uo+rwx xml_files
Для тех у кого порт родной=80->kinomonster.com/parser.php
("xml_files/movies.xml")
А то тоже мучился искал рещение....