SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

IndexScript question

Sp0oN

Anno Zero LTD
http://izkustvoto.com/dir/1/_1051_1080_1090_1077_1088_1072_1090_/
е всъщност:
http://izkustvoto.com/dir/1/Литература/
или иначе казано:
http://izkustvoto.com/dir/cat/1/

Как да накарам говедтото да си изкарва заглавията на кирилица! Неще! като му сложа "cyrlivic" и :nono: ... и си го вади ей като първото урл ... яко :fac: ...
ХИЛФЕ ! :) незнам защо но съм си навил на пръста че директорията трябва да има кирилски урл-та ...
 
Re: IndexScript question

С 1251 не става. Пробвал съм на моята директория.

Преди време си бях наумил да ги правя и аз така урл-тата, но след първите неуспешни опити се отказах, а и беше минал упдейта и взех малко ПР на вътрешните страници.
 
Re: IndexScript question

Проблема при използването на кирилски (и не само кирилски знаци) в header-а е свързан с HTTP spec-a. HTTP хедърите се пращат към браузера в US-ASCII encoding. Там, освен всичко друго, е описана и GET заявката.
T.e.:
Код:
GET /dir/1/НЕЩО_НА_КРИЛИЦА
Кирилският текст се енкодва в US-ASCII (доколкото това е възможно).
В някой случай това работи, понеже някои уеб сървър са "по-умни", но не трябва да се разчита на това.
По тази тема може да се напише много, но има и доста изписано. Ако се поразровиш из Нет-а ще намериш отговор на тези въпроси.
 
Re: IndexScript question

Здравейте на всички :) Като първия ми пост тук, искам да ви похваля за полезния форум ;)

Сега по темата. Става и с utf-8, но трябва да добавиш следното в пхп кода си:

header('Content-type: text/html; charset=utf-8');

След това слагаш urf-8 и в мета тага на сайта. Този метод работи, може да го погледнеш на личния ми сайт.

http://www.bubsss.com/

Имай предвид, че FF се прави на умен и ти сменя url-то в браузера, но това е само под FF, така и неразбрах как до го накарам да не се прави на толкоз хитър :) Ако някой има решение на този проблем ще съм му благодарен да го сподели :)
 
Re: IndexScript question

@bubsss - това решава проблема с правилната визуализация на символите в страница, но не и на URL-тата. Те се предават в хедър, който съдържа и
това, което пращаш с PHP-то. Той се обработва преди да се визуализира страницата и носи инфо за това, как да я визуализира.

FF визуализира символите в URL така както му идат в хедъра, докато IE се опитва (и в повечето случай успява) да ги декодне. Ако имаш възможност провери хедъра на страница, която съдържа кирилски символи в URL-то. Някой уеб сървъри дори няма да разберат как да я обработя тази завка (въпреки, че уж браузера я показва, както трябва) и няма да видиш HttpRepsonse.
Всъщност опитвам се обясня, че няма значение какво се вижда в браузера, понеже това се обработва малко преди това.
Ако някой е работил по имплементация на уеб сървър по спецификация (на w3c за HTTP протокола) се е сблъсквал с подобен проблем.
 
Re: IndexScript question

bgkulinar - в момента имам и grand paradiso-то, но и в него са по същия начин :-\

g.mitov - нали именно затова заваме хедъра да е utf-8? Така се визуализира правилно във всичките браузъри освен във url-то на FF, тествал съм го с opera, ie и safari и под трите си е ок ;) Кажи как точно да го проверя все пак хедъра както викаш, уж го проверих и си е наред, но може и да не съм проверил квото трябва. Единствения проблем който съм открил засега на този метод е проблема с FF всичко останало си работи на 6, поне каквото съм тествал.
 
Re: IndexScript question

това е бъг в браузерите вметнаха го в предни постове тук, не съм си задавал въпроса, до колко е бъг или фийчър (това май беше валидно за друга платформа ;) )
все още не е отстранен във фф, в новия Йе уж бачка
но в моя йе7 си вади абизяни бегимоти, мое съм го забравил да го ъпдейт, сигурно знае че не го обичам и той не ме
не забравай че мн хора са още на йе6
казват че във 3-та версия на фф е коригиран

бтв, доста сървъри пращат утф-8 в хттп хедър, така че не винаги е нужно да го сетваш в пхп-то, можеш да свериш текущите хедъри които връща твоят сървър
 
Re: IndexScript question

@bubsss - а тези хедър и те трябва да са в някакъв енкодинг, нали? Това, което имах предивд, че
текста, които изпращаш с header('Content-type: text/html; charset=utf-8');
т.е. 'Content-type: text/html; charset=utf-8' е енкоднато в US-ASCII. Като част от HTTP заявката се подава
и GET заявка за ресурса. И браузера визуализира в адрес бар-а резултата от header-а за ресурса, който му е върнат.
Незнам дали става ясно, но:
1. header-ите имат един енкодинг - W3C HTTP Spec;
2. Съдържанието има друг енкодинг, тоиз, който пращаш с php или поставяш в META-та на HTML-а;
От друга страна това ,какво ще Видиш в адрес бара-а на браузера, зависи и от други фактори. Не е нито бъг, нито фиичър на бразуера.
Всъщност в 99% от случайте проблема е в предмониторното устройство :)
 

Горе