Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.57/7: Рейтинг темы: голосов - 7, средняя оценка - 4.57
5 / 5 / 1
Регистрация: 22.07.2013
Сообщений: 117

При формировании xml файла заменяет теги

07.09.2015, 22:27. Показов 1441. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет.
Есть плагин который формирует xml файл для яндекс маркета. Все бы ничего но при сохранении файл все знаки <> заменяются на &lt; и &gt; . Списывался с ребятами что делали плагин говорят что в плагине все правильно. Может что-то в настройках сервера, или еще где влиять на это? Сайт на Joomla .
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
07.09.2015, 22:27
Ответы с готовыми решениями:

Прочитать все теги XML-файла
предположим есть файл &lt;Name&gt;Иван&lt;/Name&gt; &lt;Surname&gt;Иванов&lt;Surname&gt; &lt;Age&gt;19-21&lt;/Age&gt; &lt;Education&gt;среднее&lt;/Education&gt; ...

Программа при формировании файла g не забирает первую компоненту файла f
Напишите, что именно не работает. Если не запускается программа, то у Вас ошибка в процедуре вывод в строке writeln; 4 . Нужно убрать...

Виснет при формировании файла
Всем доброго времени суток! Пишу программу, которая должна записывать в типизированный файл информацию о студентах, выводить ее в Memo и...

4
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
 Аватар для KOPOJI
16844 / 6724 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
07.09.2015, 22:34
это фильтрация. Используйте htmlspecialchars_decode, если требуется отображать теги как есть.
0
5 / 5 / 1
Регистрация: 22.07.2013
Сообщений: 117
08.09.2015, 10:54  [ТС]
Спасибо за ответ. Но не могли бы вы подробней сказать. Они говорят что у них все правильно вот фрагмент кода что отвечает за описание именно
PHP
1
2
3
4
5
6
7
8
9
10
11
if (!empty($row['prod_description'])) {
    $description = $offer->appendChild($xml->createElement('description'));
    if ($ie_params['description']== 2) {
        // оставляем в описании все html теги
        $prod_desc = "<![CDATA[".$row['prod_description']."]]>";
    } else {
        // убираем ненужные символы в строке описания товара
        $prod_desc = clearProductDescription($row['prod_description']);
    }
    $description->appendChild($xml->createTextNode($prod_desc));
}
Говорят что это "Библиотека DomXML с помощью которой работает выгрузка заменяет символы < > на коды"

Добавлено через 48 минут
Насколько я разобрался в вопросе выходит что специальные символы должны обрабатываться в HTML-сущности. И плагин все правильно формирует. А на стороне принимающей и обрабатывающей данный файл должно переводиться все с HTML-сущности назад в символы. Что данная функция htmlspecialchars_decode и делает.
Если это так тогда возникает вопрос. Можно ли как то указать что бы не обрабатывало данную переменную и не переводило символы в HTML-сущности ?
0
Эксперт PHP
5755 / 4134 / 1508
Регистрация: 06.01.2011
Сообщений: 11,276
08.09.2015, 11:01
Что за функция "clearProductDescription"? Судя по названию, как раз она и обрабатывает то, что не требуется.
0
5 / 5 / 1
Регистрация: 22.07.2013
Сообщений: 117
08.09.2015, 16:25  [ТС]
Она в этом как раз не участвует если
PHP
1
if ($ie_params['description']== 2)
А исполняется вот
PHP
1
$prod_desc = "<![CDATA[".$row['prod_description']."]]>";
Добавлено через 33 минуты
Может все дело именно в этой строчке кода ?
PHP
1
$description->appendChild($xml->createTextNode($prod_desc));
Или уже в сохранении файла
PHP
1
2
3
4
5
6
7
8
9
10
<?php
unset($res,$resm,$rowmasc,$prods_included);
// сохраняем результат в файл
$filename = $ie_params['filename'].'.xml';
$fssrv = $jshopConfig->importexport_path.$alias.'/'.$filename;
$xml->formatOutput = true;
$fsurl = $jshopConfig->importexport_live_path.$alias.'/'.$filename;
echo '<h3 class="ymlexport-title">'._JSHOP_IMDEXPORTYML_RESULT.':</h3>';
$fssize = $xml->save($fssrv);
?>
Добавлено через 4 часа 48 минут
По ходу дело именно при сохранении файла. Используется DOM XML и она в момент сохранения файла заменяет все символы в HTML-сущности . Как можно этого избежать? Кто подскажет? Нужно очень.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
08.09.2015, 16:25
Помогаю со студенческими работами здесь

Не заменяет html теги
Доброго времени суток! В чем может быть проблема, не заменяет html теги на символы. $reglogin = htmlspecialchars($_POST);

Как прочесть данные их XML файла если есть совпадающие вложенные теги?
Подскажите как можно прочесть данные их XML файла если есть совпадающие вложенные теги &lt;Areas&gt; &lt;Area&gt; ...

Linq to XML - убрать лишние теги при парсинге
Здравствуйте, не могли бы вы мне помочь пожалуйста. Я пытаюсь распарсить страницу, но вот одна проблема вышла, после того как я попытался...

Как удалить пробелы при формировании CSV файла (УТ10)
Формирую csv файл для выгрузки. вместо ARTIKUL_123 у меня пробелыпробелыпробелыARTIKUL_123 В базе 1c артикулы хранятся с...

Как сделать, чтобы после сохранения xml файла в элементе description все html теги не кодировались?
Здравствуйте. После редактирования и сохранения через ElementTree xml файла tree.write('test.xml', encoding=&quot;utf-8&quot;,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Ниже машинный перевод статьи The Thinkpad X220 Tablet is the best budget school laptop period . Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы,. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
Ломающие изменения в C#.NStar Alpha
Etyuhibosecyu 20.11.2025
Уже можно не только тестировать, но и пользоваться C#. NStar - писать оконные приложения, содержащие надписи, кнопки, текстовые поля и даже изображения, например, моя игра "Три в ряд" написана на этом. . .
Мысли в слух
kumehtar 18.11.2025
Кстати, совсем недавно имел разговор на тему медитаций с людьми. И обнаружил, что они вообще не понимают что такое медитация и зачем она нужна. Самые базовые вещи. Для них это - когда просто люди. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru