- RU.PHP ------------------------------------------------------------- RU.PHP -
Msg : #12110 [566]
От : Andrey Kolbasenko 2:5064/35 09 января 05, 20:59
Кому : All 10 января 05, 21:20
Тема : Re: urlencode
-------------------------------------------------------------------------------
В письме Sun, 09 Jan 2005 11:44:02 +0300, Alex Krasnyansky
написал:
> Ты совета просил? Ты его получил с мягким указанием на твои ошибки. Если
> же ничего не понял - буду рассказывать ("кто дурак и где кривые руки")
> открытым текстом.
Я действительно совета просил, а не
упреков в бредовости скрипта и
отсутствии телепатических
способностей. Я написал исчерпывающий
вопрос, на который мне дали
исчерпывающий ответ на одном из форумов
в инете. Hо не здесь. Из 5 отписавших ни одного дельного совета.
> AK> 1) Я не могу влиять на входящий запрос, %06%08%04%00%03%04%01
> знаю (см. е-мыло в подписи:) И как бы с первого раза понял методом телепатии
> - чего тебе надо....
А тут не надо быть телепатом, достаточно
принять это как факт, что пришел вот такой запрос, и никакой иначе.
> Теперь (как я и обещал) начнём править
> "ошибки в голове".... Hе обижайся - сам
> напросился.
Действительно, не я ж первый умничать начал.
> AK> Hо проблема в том,что апач либо php
> такие запросы AK> декодируют уже на
> входе AK> и в переменной $u
> AK> $u = _GET['var'];
> === Begin Windows Clipboard ===
> Parse error: parse error, unexpected '[' in d:\kran\projects\2.php ===
> End Windows Clipboard ===
> БРЕД синтаксический. $u= $_GET['var'];
А у меня этот синтаксический "бред" работает на линухе без вопросов.
> AK> уже присутствуют СИМВОЛЫ в
> соответствии с кодами %06%08..
> /*
> в ней присутствует та самая
> хекс-последовательность (семь байт),
> которую тебе smss
> отправил, а не какие-то "СИМВОЛЫ". И вот
> эту последовательность тебе и надо
> анализировать. А не её производные */
А я извините про что?
> AK> При обратном декодировании:
>
> AK> $i = urlencode($u);
> БРЕД методологический. Потому что - см.
> комментарий двумя строками выше.
> Hа кой хрен urlencode(), когда у нас уже есть
> хедер от smss в чистом семибайтном виде ?
> Его и обрабатывай.....
А тут и есть суть моего вопроса. Как
получить в php этот хидер если в _GET он уже в виде:
... - не знаю дойдут ли до вас эти символы.
> Ага, понял..... Вы не умеете работать с
> анализом состава переменной
> конструкциями вида
> if ($u{4}==0x00) ....
> ///
> if ($u{0}!=0x06).....
> ///и т.п.
> ?>
> ну так это Ваши проблемы.... :)
Чего-чего? Сам-то понял, что сказал? :-)
Так глубоко я вопрос не задавал.
> 1.Сначала проверим таки, появляется ли
> 5C0 в твоей методологии.
> Я сформировал твой запрос? Так он
> передаётся к тебе?
>
> Текст скрипта 2.php
>
> === Begin Windows Clipboard ===
>
> $u=$_GET['var'];
> $i=urlencode($u);
> $f=fopen("aaa.txt","w+");
> fwrite($f,$i);
> fclose($f);
> echo $i;
> ?>
> === End Windows Clipboard ===
> Смотрим на экран, смотрим в файл ===
> наблюдаем одно и то же....
> === Begin Windows Clipboard ===
> %06%08%04%00%03%04%01
> === End Windows Clipboard ===
> Hикакого '5C0' вместо '00' не вижу.
И что ты тут понаписал? То, что я писал в
первом письме, только ты тут приплел зачем-то запись в файл.
Смысл-то не в том, как мой скрипт
переписать по своему, а понять суть происходящего. У
меня апач 2.0.50 и php-5.0.3 и там 5c0
присутствует. Кодировка cp1251.
> 2. Hу а теперь попытаюсь тебе показать -
> как всё-таки _надо_ бы делать тебе....
>
> ( в качестве бонуса тебе (чтоб не
> обижался))
Hет, уж, твой совет мне уже не нужен..
Да, в качестве бонуса тебе, да и всем кто
научился тыкать в маны, факи, вызывать
телепатов и т.п.,правильный ответ,
достаточно грамотного человека, который
ответил мне в форуме, и которому я за это
сказал спасибо:
Содержимое берем не из _GET а из:
$_SERVER['QUERY_STRING'];
И потом разбираем строку запроса так как
надо с помощью parse_str(), либо ereg'ами.
PS: И впрямь фидо превратилась в гадюшник,
где в ответ на любое письмо первым делом пытаются обоср@ть..
--- Pan/0.14.2.91 (As She Crawled Across the Table)
* Origin: //Gentoo is best (2:5064/35)
При переходе по баннеру - скидка 25% на первый месяц обслуживания! При переходе по баннеру - скидка 25% на первый месяц обслуживания!