AJAX - скрипт, връщащ масив.

Я то това ясно!Каква ли ще тази стойност със | в нея?Незнам, все пак автора да каже.Иначе си прав.Но става по-сложно.Докато начина,по който аз предлагам за разрешаване на казуса е доста лесен!
 
emagi каза:
Я то това ясно!Каква ли ще тази стойност със | в нея?Незнам, все пак автора да каже.Иначе си прав.Но става по-сложно.Докато начина,по който аз предлагам за разрешаване на казуса е доста лесен!

Зависи от гледната точка. Нека все пак автора на темата си избере, който начин на него му е по-лесен. И двата вършат работа.
 
Здравейте!

Благдаря за различните подходи, които предлагате!

По ред на постъпване:

StormBreaker,
както писах и снощи, ако отговорът се върне в XML и AJAX-а го отчете като масив е ок.
Снощи го мъчих, но изглежда оплитам хедърите (проблема е от доста време заради енкодингите по подразбиране) и още не мога да кажа дали работи.
Само един въпрос, който ми изскочи снощи - в стойностите, които ще вкарвам в масива има ХТМЛ-тагове, които вероятно ще са пречка. За тестовете ги кодирам с htmlspecialchars(); на сървъра преди да ги принтирам, но за да се изобразят от браузъра ще се наложи да ги декодирам с Js. Съществува ли в Js еквивалентна функция на htmlspecialchars_decode(); или най-добре сигурен начин за предаване на HTML-тагове в XML?


emagi,
на сървъра нямам проблем да превърна какъвто и да е обект, променлива или стойност в друг тип, т.е. масива не е затруднение, а опит за решение. В момента сървъра връща низова стойност и ми се налага да правя сложни проверки с js, за да раздробя низа и да извлека информацията. Касае се за различна по тип стойности в един низ. Не е много удобно, а масива решава този проблем.

Ето какъв е механизма в момента - напълно работещ:

потребител AJAX-> урл-променливи с множество стойности -> сървър: обработка на заявката, запис и принтиране на н-брой стойности под формата на низ с разделител -> AJAX: получаване на низа, обработка и разпределяне на стойностите за да бъдат изобразени

split() е лошата алтернатива за получаване на масив. Имам проблеми с енкодинга за различните браузъри, налага се да конвертирам и като добавите към това УРЛ-кодирането и декодирането започват да се губят символи, вкл. разделители и потребителите се дразнят. Искам да приключа с този несигурен тип подаване на информация.

relax,
предлагаш същото, което и emagi.

Засега съм се спрял на варианта на StormBreaker, но ще мога да съм по-конкретен като се уверя че става или не става.
 
sizif каза:
Здравейте!

Благдаря за различните подходи, които предлагате!

По ред на постъпване:

StormBreaker,
както писах и снощи, ако отговорът се върне в XML и AJAX-а го отчете като масив е ок.
Снощи го мъчих, но изглежда оплитам хедърите (проблема е от доста време заради енкодингите по подразбиране) и още не мога да кажа дали работи.
Само един въпрос, който ми изскочи снощи - в стойностите, които ще вкарвам в масива има ХТМЛ-тагове, които вероятно ще са пречка. За тестовете ги кодирам с htmlspecialchars(); на сървъра преди да ги принтирам, но за да се изобразят от браузъра ще се наложи да ги декодирам с Js. Съществува ли в Js еквивалентна функция на htmlspecialchars_decode(); или най-добре сигурен начин за предаване на HTML-тагове в XML?

Има начин да пренебрегнеш HTML таговете. Стойността, която подаваш я ограждаш със CDATA таг. Така XML парсера ще пренебрегне таговете в данните. Ето ти пример. А за енкодинга в XML Можеш да сложиш това в зеленото

<?xml version="1.0" encoding="windows-1251"?>
<results>
<res>
<![CDATA[
<br /><b>ksdjhfasdklf</b>
]]>
</res>

<res>
<![CDATA[
<b>asdasdasdad</b><br />
]]>
</res>
</results>
 
Работил съм с XML покрай сайт-маповете и едни RSS новини, но благодаря :)

Проблемът с енкодинга е при изпращането на основния текст до сървъра. Не го намесвам, за да не дооплета и без това омотаните обяснения, които пиша.

Довечера ще работя по чата и ще кажа, какво е станало :?:
 
sizif каза:
Работил съм с XML покрай сайт-маповете и едни RSS новини, но благодаря :)

Проблемът с енкодинга е при изпращането на основния текст до сървъра. Не го намесвам, за да не дооплета и без това омотаните обяснения, които пиша.

Довечера ще работя по чата и ще кажа, какво е станало :?:

Виж, незнам с какъв енкодинг работиш, но аз бих ти препоръчал utf-8 . Много пъти съм работил с него и не съм имал проблеми, стига на AJAX content_encoding-a да му подадеш utf-8 и php файла да ти е utf-8, не ASCII.

Пиши като го пробваш.
 
Здравейте!

След две нощи мъдруване реших да ползвам AJAX-а предложен от FestarBG, защото е по-удобен от този, който ползвах досега. По тази причина считам за редно точката да отиде при FestarBG :)

С масива от XML не се получи, но не съм се отказал от идеята.
Тази тема стана доста объркана, затова ще пусна нова, вече по-конкретна.

Благодаря на всички, които я проследихте и участвахте с предложения. Моля ви да следите тази тема:

http://web-tourist.net/forum/viewtopic.php?t=56647

ПП: human, оправих енкодингите. проблемът е по-сложен и само iconv(); не помага, защото е намесено и УРЛ-кодиране и различен енкодинг по подразбиране за различните браузъри и и... :)
 

Back
Горе