понимаеш как таковй php не может определить на какой раскладке написан текст (на сколько я знаю =) ) буквы на русской раскладке имеют свой код, буквы на английской раскладке имеют свой код.... если тебе нужно для чегото конкретного можеш написать постараемся помоч , сделать так чтоб программа определяла где русский где англ... ///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// непонял тебя... тебе парсить что надо??? в каком виде на выходе надо зачем тебе что то вводить и отправлять? причем тут парсер... или ты хочеш вводить адрес страници отправлять скрипту и чтоб он парсил? p.s. если хатите чтоб вам помогли то формулируйте вопрос/просьбу конкретней и шире. =)
переводишь в байты и смотришь: 1. Если встречаются символы ТОЛЬКО из диапозона 41-7A (в HEX) или 65-122 (ASC) - то английский 2. Если встречаются символы ТОЛЬКО из диапозона C0-FF (в HEX) или 192-255 (ASC) - то русский 3. Если и из-того и из другого - то смешанный
Интересно, зачем тогда вообще пароли? Т.е. типо пунто-свитчер на php? Хз, подумать надо. Хотя мне видется так: 1. Массив ВСЕХ английских букв. 2. Массив АНАЛОГ ПЕРВОГО МАСИИВА, где все английские буквы заменены на их аналоги на русском. 3. Соответственно ОБА массива количественно равны. 4. Сравниваешь поэлементно то, что ввели на совпадение (т.е. сравниваешь сначала пароль введенный СРАЗУ с паролем из БД, затем, в случае неудачи, заменяешь его аналогичными буквами из английского массива) Например: пароль "qwerty" В русской расскладке пароль "йцукен" значит у тебя два массива: $a = array('q','w','e','r','t','y'); $b = array('й','ц','у','к','е','н') Ошиблись, вместо "qwerty" ввели "йцукен". Сравнил то, что ввели, с тем, что в базе - выдал ошибку, значит дальше в цикле меняешь все русские на английские, сравниваешь опять - правильно - пускаешь, нет - значит пароль неверный. Посылаешь нафиг. в общем примерно так (всю клаву в массив перегнать только осталось) PHP: <?php $c = 'йцукен'; $d = punto($c); echo $d; /* Функция посимвольного преобразования русск в англ */ function punto($ascii) { $hex = ''; $arr1 = array('q','w','e','r','t','y'); $arr2 = array('й','ц','у','к','е','н'); $count = count($arr1); for ($i = 0; $i < strlen($ascii); $i++) { for ($z = 0; $z < $count; $z++) { if ($ascii{$i}==$arr2[$z]) $hex.=$arr1[$z]; } } return $hex; } ?>
Pashkela Можно обойтись и одним запросом - просто храним пароли в одной раскладке и сверяем PHP: $in='gfhjkm dthty'; $from="qwertyuiop[]asdfghjkl;'zxcvbnm,./"; $to= 'йцукенгшщзхъфывапролджэячсмитьбю.'; echo strtr($in,$from,$to);
<Files ~ "\.gif$"> AddType application/x-httpd-php .gif </Files> в плане безопасности лучше в текущей папке, чем в корне
Ап пост Так и не нашёл на него ответа без применения Аякса....(нужный вычисления чисто на стороне сервера)
Доброго всем дня! Есть емейл база - base.txt Есть база отписавшихся - unsubscribe.txt Как мне пропарсить base.txt и удалить из нее емейлы unsubscribe.txt? Есть подобный код?