Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Преобразовать строку в HTML код (обратное htmlspecialchars из php) (https://javascript.ru/forum/misc/57836-preobrazovat-stroku-v-html-kod-obratnoe-htmlspecialchars-iz-php.html)

daslex 22.08.2015 21:57

KosBeg,
Это же ajax? Я не очень в теме как его дружить с Wordpress.

KosBeg 22.08.2015 22:17

Цитата:

Сообщение от daslex
Это же ajax?

да
Цитата:

Сообщение от daslex
Я не очень в теме как его дружить с Wordpress.

а они по дефолту дружат)))
шутка, но с долей правды
а если честно - ничего дружить не надо!
просто заменяешь это http://javascript.ru/forum/misc/5783...tml#post385169 на тот код который я написал, он полность независим)
правда со своими мини-правками(адрес подправить, може еще что-то)

UPD: извиняюсь - не прочитал сразу...
Цитата:

Сообщение от daslex
Так ничего вообще не происходит. Даже окно не открывается.

ну тогда ничем помочь не смогу...

daslex 22.08.2015 22:21

Скорее всего происходит то, из-за чего я экранировал символы и преобразовывал HTML в HTML сущности. Поэтому даже окно не открывается. Это то о чем я говорил, что, вероятно, будут те же "грабли".

KosBeg 22.08.2015 22:23

хотя я вижу решение именно таким способом - то что нужно хранится в файле, и его загружают аяксом и вставляют в окно

daslex 22.08.2015 22:23

Хоть убейте. У меня не дружат. Я как-то пробовал делать простые вещи на ajax, на чистом HTML локально получилось, а на Wordpress не заработало. (совсем простые примеры).

KosBeg 22.08.2015 22:30

function MyFunc(url){
  var xhr = new XMLHttpRequest();
  xhr.open('GET', url, true);
  xhr.send();
  xhr.onreadystatechange = function() {
    if (xhr.readyState != 4) return;
    if (xhr.status != 200) {
      alert('Ошибка: ' + xhr.status + '|' + xhr.statusText);
    } else {
      alert('All is ok');
	  var NewWin=window.open('','','...');
      NewWin.document.write(xhr.responseText); // xhr.responseText - переменная в которой хранится нужный текст
    }
  }
}
MyFunc('http://javascript.ru/forum/');

нажми у браузере f12 и введи в консоль этот код
появится алетр('All is ok')
откроется окно и будет там нужный текст)))
косяк на твоей стороне...

UPD: всем спокойной ночи, а спать :D

daslex 22.08.2015 22:32

Я подумывал без Аякса сначала преобразовать lдействительные, изначальные HTML сущности в HTML сущности с неким признаком, что они настоящие и их нужно выводить как HTML сущности, потом уже преобразовывать текст так, чтобы javascript его проглатывал, а потом уже пробовать раскодировать этот текст в нужный вид, используя пост2 (Ваш совет), а HTML сущности с признаком преобразовывать в HTML сущности, так как они изначально таковые.

Вот как-то так. Просто знаний нету как такое провернуть.

daslex 22.08.2015 22:40

Цитата:

Сообщение от KosBeg (Сообщение 385205)
нажми у браузере f12 и введи в консоль этот код
появится алетр('All is ok')
откроется окно и будет там нужный текст)))
косяк на твоей стороне...

UPD: всем спокойной ночи, а спать :D

Я попробовал в Опере и вот что получил
Uncaught SyntaxError: Unexpected token <
at Object.InjectedScript._evaluateOn (<anonymous>:905:140)
at Object.InjectedScript._evaluateAndWrap (<anonymous>:838:34)
at Object.InjectedScript.evaluate (<anonymous>:694:21)

___________
Снов. Я не задерживаю.

daslex 22.08.2015 23:19

Цитата:

Сообщение от laimas (Сообщение 385180)
А кто вас допрашивает? Если хозяин описаний вы, если сайт динамический, то почему описания кода хранятся не в базе (а уж там и как раз и место), а свалены а какие-то файлы, к тому же так бездумно отдаваемые клиенту?
....
Впрочем как хотите, но что-то советовать не зная всего трудно, и если это для вас "допрос"... ну значит майтесь с массивами и прочим.

А что знать-то.
Допросом я это назвал, потому что я терпеливо отвечаю на ваши вопросы больше чем на страницу и получаю все новые и новые порции вопросов, среди которых есть советы, часть из которых просто "не рабочие варианты", но больше вопросов "почему", "почему каша", "почему не бд", почему "файлы", "зачем преобразовываете","почему", "почему", "почему", "кто автор описаний".., "зачем массив", "какой у Вас сайт".
___________________
У меня сайт НЕ интерактивный, скорее статический, но с БД. CMS Wordpress. На сайте будут страницы, внутри страниц будут блоки с <div id="..">, клик по любому такому div должен открывать окно, в которое будет вписываться текст, который в свою очередь имеет некоторую связь с выбранным div. Я выбрал хранение в файлах, потому что импортировать файлы намного проще и быстрее чем импортирование всей бд при добавлении или редактировании файла и потому что обращение к файлам быстрее чем обращение к БД, т.е. даже грузится будет очень быстро. Т.к. я не могу javascript использовать для серверных файлов, я использую php, а так как файлов много, текст каждого из этого файла я записываю в массив в определенную ячейку. Это тоже самое, что записать этот текст в переменную. Дальше уже я этот текст отдаю клиенту, потому что открыть окно я могу только на клиенте. И что значит бездумно отдаю, я не очень понимаю. Я уже третий раз говорю. Я не знаю javascript. Я не знаю чем будет отличатся передача текста из памяти, которая что-то там хранит на сервере отличаться от передачи из бд.

Вон сколько вопросов.

laimas 23.08.2015 03:16

Цитата:

Сообщение от daslex
И я не знаю насколько удобно потом вносить правки во все файлы максимально быстро. Да и само обращение к файлам работает быстрее чем обращение к бд.
Так-то если надо отдельный файл попраивть или массово что-то там дописать/изменить, то я могу себе что-то свое написать несложное. Из-за 1 правки импортировать бд в пару десятков МБ) Немного забавно, но неудобно.

Эти заблуждения от незнания. Но можно и на файлах, но никак не с таким подходом как у вас. Вы изначально в своих файлах, вернее к походу хранения и получения данных подложили себе мину, создав проблему, а потом героически с не боритесь.

Цитата:

Сообщение от daslex
Сайт на Wordpress

Тем более, не тем вы занимаетесь имея готовую CMS.


Часовой пояс GMT +3, время: 20:31.