Модераторы: skyboy, MoLeX, Aliance, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> PHP-DOM XML и ENTITY 
:(
    Опции темы
PsiMagistr
Дата 6.10.2016, 15:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 479
Регистрация: 31.12.2009

Репутация: нет
Всего: 1



Ребята, у меня такая проблема. Взаимодействие PHP и XML. 

Код

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE test SYSTEM "../../../8th_day_tests.dtd">
<test language="../../../language/RU.ini">
    <settings>
        <title>Кто такой Человек Восьмого Дня?</title>
        <exit href="http://algart.net/ru/8th_day_of_creation/man_of_8th_day/">Перейти к статье Кто такой человек Восьмого Дня</exit>
    </settings>    
    <finish id="last1">
        <message>Умолчание</message>             
                
        <!-- Комментарий -->
        <!--<default>Вы набрали %d из %d максимально возможных баллов. Просто великолепно! Вы человек восьмого дня! Не может такого быть.</default>    -->
    </finish>
    <finish id="last2">
        <message>
            Вы набрали %d из %d максимально возможных баллов. Просто великолепно!
            Вы человек восьмого дня!
            Не может такого быть.  
        </message> 
            <range min="0" max="10"><message>Вы набрали %d из %d максимально возможных баллов. Пока Вы нам не подходите. Потренеруйтесь еще.</message></range>
            <range min="11" max="20"><message>Вы набрали %d из %d максимально возможных баллов. Увы, но пока Вы нам все еще не подходите..</message></range>
            <range min="21" max="30"><message>Вы набрали %d из %d максимально возможных баллов. Вы человек 8 дня. но пока только наполовину.</message></range>
            <range min="31" max="40"><message>Вы набрали %d из %d максимально возможных баллов. Ооо! Вы прешли больше половины теста.</message></range>
            <range min="41" max="50"><message>Вы набрали %d из %d максимально возможных баллов. Еще немножечко. Подтянитесь.</message></range>
            <range min="51" max="60"><message>Вы набрали %d из %d максимально возможных баллов. Вы растете!</message></range>
            <range min="71" max="80"><message>Вы набрали %d из %d максимально возможных баллов. Скоро перейдете Рубикон!</message></range>
            <range min="81" max="84"><message>Вы набрали %d из %d максимально возможных баллов. Последняя капля осталась!</message></range>
        <!-- Комментарий -->
        <!--<default>Вы набрали %d из %d максимально возможных баллов. Просто великолепно! Вы человек восьмого дня! Не может такого быть.</default>    -->
    </finish>
    <question id="level7" value="Понимаете ли вы цель своей жизни?&lt;br/&gt;Понимаете &br; или нет?">    <!-- Вот сущность &br -->
        <answer value="Да" weight="5" />
        <answer value="Нет" goto="level1" />
    </question>
    <question value="Где во времени находится цель вашей жизни?">    
        <answer value="Я планирую достичь своей цели в течении своей жизни" />
        <answer value="Цель моей жизни находится за пределами этой конкретной земной жизни" weight="5" />
    </question>
    <question id="level1" value="Вы готовы практически работать, здесь и сейчас, ради достижения своей цели?">    
        <answer value="Да, я уже работаю" weight="5" />
        <answer value="Нет, в данный момент у меня нет возможности: очень занят на работе, должен кормить семью, должен/должна заботиться о маленьком ребенке, мешает болезнь, какие-то другие причины..." goto="level6" />
    </question>
    <question value="Готовы ли вы, работая ради достижения своей цели, изменить себя и свой образ жизни?">    
        <answer value="Да" weight="2" />
        <answer value="Нет" />        
    </question>
    <question value="Готовы ли вы, работая ради достижения своей цели, изменить окружающий мир?">    
        <answer value="Да" weight="3" />
        <answer value="Нет" />        
    </question>        
    <question id="level6" value="Есть ли у Вас устойчивая система ценностей?">    
        <answer value="Да" weight="5" />
        <answer value="Нет" goto="level2" />
    </question>
    <question value="Готовы ли вы, в рамках системы ценностей, усложнять мышление и развивать себя?">    
        <answer value="Да" weight="5" />
        <answer value="Нет" />    
    </question>
    <question id="level2" value="Каково ваше отношение к существующей реальности 7-го Дня Творения?">
        <answer value="Тяжело, но пока приходится жить в этой реальности" goto="level5" />
        <answer value="Я не могу жить в этом мире" weight="5" />
    </question>
    <question value="Готовы ли вы творить новую реальность вместе с другими людьми 8-го Дня?">    
        <answer value="Да" weight="5" />
        <answer value="Нет" />    
    </question>
    <question id="level5" value="Вы готовы работать в рамках тех правил и парадигм, которые вам предлагают другие (общество, религия, государство, семья и т.д.)?">    
        <answer value="Да, ведь выбора нет" goto="level3" />
        <answer value="Нет, я так не могу" weight="5" />       
    </question>
    <question value="Вы умеете и готовы формулировать собственные правила и парадигмы, чтобы работать в соответствии с ними?">
        <answer value="Да" weight="5" />
        <answer value="Нет" />
    </question>
    <question id="level3" value="Вы заинтересованы в развитии своего потенциала?">
        <answer value="Да" weight="5" />
        <answer value="Нет" goto="level4" />
    </question>
    <question value="Вы готовы задействовать свой потенциал для развития Мира?">
        <answer value="Да" weight="5" />
        <answer value="Нет" />
    </question>
    <question id="level4" value="Стремитесь ли Вы к постоянному и всеобщему диалогу">
        <answer value="Да" weight="5" />
        <answer value="Нет" goto="last2" />
    </question>    
    <question value="Вы стремитесь к диалогу с самим собой?">
        <answer value="Да" weight="5">
            <set name="dialog"/>
        </answer>
        <answer value="Нет" />
    </question>
    <!--Комментарий -->
    <!--Комментарий -->
    <question value="Вы стремитесь к диалогу с другими людьми?">
    <!--Комментарий -->
        <answer value="Да" weight="5">
           <set name="dialog" />
        </answer>
        <answer value="Нет" />
    </question>
    <question value="Вы стремитесь к диалогу с Миром?">
        <answer value="Да" weight="5">           
           <set name="dialog" />           
        </answer>
        <answer value="Нет" />
    </question>
    <question value="Вы стремитесь и готовы к диалогу с Богом?">
        <answer value="Да" weight="5" goto="last2" />
        <answer value="Нет" weight="0">
           <if name="dialog" goto="last2"/>
        </answer>
    </question>
    <!--Комментарий -->
    <!--Комментарий -->
    <!--Комментарий -->
    <!--Комментарий -->
    <question value="Но вы же сказали, что стремитесь к всеобщему диалогу! По-видимому, это не так. Попробуйте еще раз!">
        <answer value="Вернуться к вопросу про диалог" goto="level4">
         <unset name="dialog"/>         
        </answer>        
    </question>
</test>


И DTD


Код

<!ELEMENT test (settings, finish+, question+)>
<!ATTLIST test language CDATA #REQUIRED>
<!ELEMENT settings (title, exit)>
<!ELEMENT title (#PCDATA)> 
<!ELEMENT exit (#PCDATA)>
<!ATTLIST exit href CDATA #REQUIRED>
<!ELEMENT finish (message, range*)>
<!ELEMENT message (#PCDATA)>
<!ELEMENT range (message)>
<!ATTLIST range min CDATA #REQUIRED
max CDATA #REQUIRED>
<!ATTLIST finish id ID #REQUIRED>
<!ELEMENT question (answer+)>
<!ATTLIST question id ID #IMPLIED
value CDATA #REQUIRED>
<!ELEMENT answer (set*, unset*, if*, unless*)>
<!ATTLIST answer value CDATA #REQUIRED
weight CDATA #IMPLIED
goto IDREF #IMPLIED>
<!ELEMENT set EMPTY>
<!ATTLIST set name CDATA #REQUIRED>
<!ELEMENT unset EMPTY>
<!ATTLIST unset name CDATA #REQUIRED>
<!ELEMENT if EMPTY>
<!ATTLIST if name CDATA #REQUIRED
goto IDREF #REQUIRED>
<!ELEMENT unless EMPTY>
<!ATTLIST unless name CDATA #REQUIRED
goto IDREF #REQUIRED>
<!ENTITY br "Vasya">



Функция PHP DOM validate() отказывается видеть сущности (<!ENTITY br "Vasya">) если они определены во внешнем DTD.

Код

Warning: DOMDocument::load() [domdocument.load]: Entity 'br' not defined in file:///Z:/home/magictest/www/tests/ru/man_of_8th_day/man_of_8th_day.xml, line: 31 in Z:\home\magictest\www\includes\companion.php on line 5


Остальные декларации DTD видны и успешно валидируемы.

Версия PHP 5.3.3

Всем заранее спасибо за помощь.

Это сообщение отредактировал(а) PsiMagistr - 6.10.2016, 15:11


--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
_zorn_
Дата 6.10.2016, 15:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: 6
Всего: 12



Цитата(PsiMagistr @  6.10.2016,  22:09 Найти цитируемый пост)
Версия PHP 5.3.3

Так ради прикола попробуйте тот же самый код запустить на более новой версии.
Если проблема не решится, то будем думать.

ЗЫ. Вы еще до сих пор пользуетесь array() ?
ЗЫЫ. И на центос можно поставить 5.6
ЗЫЫЫ. Хотя тут проблема скорей в libxml. Вобщем обновляйте дистрибутив. (дебиан рулит. центос6 на центос7 например ты запаришся, в отличие от...)

ЗЫЫЫЫЫ. Пхп 5,3 умер давно  smile 

Это сообщение отредактировал(а) _zorn_ - 6.10.2016, 15:23
PM MAIL   Вверх
PsiMagistr
Дата 6.10.2016, 17:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 479
Регистрация: 31.12.2009

Репутация: нет
Всего: 1



Спасибо большое. А у меня Денвер живее всех живых...


--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
PsiMagistr
Дата 6.10.2016, 19:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 479
Регистрация: 31.12.2009

Репутация: нет
Всего: 1



Пока никак не разобрался, как эти entity включить...


--------------------
"Арфы нет? Возьмите бубен!

Ребята, будем жить!"

 (с) "В бой идут одни старики"

---

"ИЕ" - один из самых сумасшедших браузеров в нашей галактике.
PM MAIL   Вверх
_zorn_
Дата 7.10.2016, 20:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: 6
Всего: 12



Цитата(PsiMagistr @  7.10.2016,  00:20 Найти цитируемый пост)
А у меня Денвер живее всех живых... 

А пхп обновить в силах на нем ?
PM MAIL   Вверх
whatisnot
Дата 8.10.2016, 16:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 130
Регистрация: 14.12.2014

Репутация: 1
Всего: 2



Цитата(PsiMagistr @  6.10.2016,  17:20 Найти цитируемый пост)
А у меня Денвер живее всех живых...


Этот "живее всех живых" умер с N лет назад когда перестал сопровождаться. Давно имеется куда более богаче по возможностям и удобное покойника. 

Это сообщение отредактировал(а) whatisnot - 8.10.2016, 16:09
PM MAIL   Вверх
_zorn_
Дата 12.10.2016, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1077
Регистрация: 21.8.2007

Репутация: 6
Всего: 12



Цитата(whatisnot @  8.10.2016,  23:09 Найти цитируемый пост)
Этот "живее всех живых" умер с N лет назад когда перестал сопровождаться. Давно имеется куда более богаче по возможностям и удобное покойника. 

Да вообще то сам по себе денвер был так сказать "кнопкой для изучения пхп".
Вот и пытаюсь выяснить, дальше "кнопки" пошел человек или нет.

ЗЫ. 
А вы что можете сказать про своего "не покойника" ?
Можете ли вы к нему подключить модуль... скажем руби.
Чтобы скрипты bash в браузер пуляли вывод, модуль можеш подключить ?


Это сообщение отредактировал(а) _zorn_ - 12.10.2016, 18:59
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "PHP"
Aliance
IZ@TOP
skyboy
SamDark
MoLeX

Новичкам:

  • PHP редакторы собираются и обсуждаются здесь
  • Электронные книги по PHP, документацию можно найти здесь
  • Интерпретатор PHP, полную документацию можно скачать на PHP.NET

Важно:

  • Не брезгуйте пользоваться тегами [code=php]КОД[/code] для повышения читабельности текста/кода.
  • Перед созданием новой темы воспользуйтесь поиском и загляните в FAQ
  • Действия модераторов можно обсудить здесь

Внимание:

  • Темы "ищу скрипт", "подскажите скрипт" и т.п. будут переноситься в форум "Web-технологии"
  • Темы с именами: "Срочно", "помогите", "не знаю как делать" будут УДАЛЯТЬСЯ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1026 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.