Люди,накосячил я чет со скриптом,Который Zedi помогал исправлять,а ошибку найти никак не могу.Может,кто сможет ? Битый час уже пытаюсь... Скрипт не записывает ничего,а почему - непонятно. ПЫСЫ: Фаилы все у меня есть и названы правильно.Лежат в одной директории. PHP: <?php //PHP фаил должен быть вида логин;пароль !))); set_time_limit(0); $fp = file("hacked_emails.txt"); $m = fopen("mail.ru.txt", "w"); $yah = fopen("yahoo.txt", "w"); $yan = fopen("yandex.txt", "w"); $g = fopen("gmail.txt","w"); $n = fopen("rambler.txt","w"); $u = fopen("ukr.net.txt","w"); $t = fopen("telenet.ru.txt","w"); $b = fopen("bigmir.txt","w"); $my = fopen("mymail.txt","w"); $o = fopen("others.txt","w"); $i = 0; $i1 = 0; $i2 = 0; $i3 = 0; $i4 = 0; $i5 = 0; $i6 = 0; $i7 = 0; $i8 = 0; $i9 = 0; foreach ($fp as $line) { if (preg_match("/^[0-9a-z_\.]+@mail.ru/", $line)) { fwrite($m, $line); $i++; } if (preg_match("/^[0-9a-z_\.]+@inbox.ru/", $line)) { fwrite($m, $line); $i++; } if (preg_match("/^[0-9a-z_\.]+@list.ru/", $line)) { fwrite($m, $line); $i++; } if (preg_match("/^[0-9a-z_\.]+@bk.ru/", $line)) { fwrite($m, $line); $i++; } if (preg_match("/^[0-9a-z_\.]+@telenet.ru/", $line)) { fwrite($t, $line); $i7++; } if (preg_match("/^[0-9a-z_\.]+@yahoo.com/", $line)) { fwrite($yah, $line); $i1++; } if (preg_match("/^[0-9a-z_\.]+@mymail-in.net/", $line)) { fwrite($my, $line); $i8++; } if (preg_match("/^[0-9a-z_\.]+@yandex.ru/", $line)) { fwrite($yan, $line); $i2++; } if (preg_match("/^[0-9a-z_\.]@bigmir.net/", $line)) { fwrite($b, $line); $i6++; } if (preg_match("/^[0-9a-z_\.]+@gmail.com/",$line)) { fwrite($g,$line); $i3++; } if(preg_match("/^[0-9a-z_\.]+@ukr.net/",$line)) { fwrite($u,$line); $i4++; } if(preg_match("/^[0-9a-z_\.]+@rambler.ru/",$line)) { fwrite($n,$line); $i5++; } } fclose($m); fclose($yah); fclose($yan); fclose($u); fclose($n); fclose($t); fclose($b); fclose($g); fclose($my); fclose($o); echo "Mail.ru: $i ящиков<br>"; echo "Yahoo.com: $i1 ящиков<br>"; echo "Yandex.ru: $i2 ящиков<br>"; echo "Gmail.com: $i3 ящиков<br>"; echo "Ukr.net $i4 ящиков<br>"; echo "Rambler.ru: $i5 ящиков<br>"; echo "Bigmir.net: $i6 ящиков<br>"; echo "Telenet.ru: $i7 ящиков<br>"; echo "mymail-in.net: $i8 ящиков<br>"; echo "Другие мылы: $i9 ящиков<br>"; ?>
1. Регулярка попроще и попровереннее: /\w+@mail.ru/ далее меняешь на то, что тебе надо. Дальше пока смотреть ломает) Попробуй регу сменить А вообще запустил сейчас скрипт вообще без изменений - всё пишется и создается. В чем проблема - непонятно. Все вновь созданные файлы проверял на наличие в них записей? Запускаешь на хочте и смотришь потом в Тотал Командере что ли? Так перепокдлючись просто
главное проверь название, есть ли у тебя реально такой hacked_emails.txt в папке. Нет - и всё остальное прахом. Всегда в начало скрипта вставляй: @ini_set("display_errors","1"); на стадии тестирования уж точно ЗЫЖ В юниксе регистр имеет значение, например Hacked_emails.txt не тоже самое, что hacked_emails.txt
Я вот думаю,мб это из-за того,что фаил в Unicode ? Других причин тупо не нахожу.Мб надо было в ANSI...Ща проверю ЗЫ: Уже не нужно,но я поставлю))))Проблема была в кодировке именно.Придётся пересохранять...Я выдирал пароли SIPT-ом,и там были пароли вида 2000фраз Алгоритм отсеивания я не придумал,посему решил их оставить.Жалко,конечно,юзеров терять,так как не догадался,что за кодировка была прописана в таблице или в базе.
А чо тут догадываться, мы ж хоцкеры, мы знать должны http://www.artlebedev.ru/tools/decoder/ 2000фраз CP1251 → UTF-8
Вот результат получился: Mail.ru: 1503 ящиков Yahoo.com: 10 ящиков Yandex.ru: 180 ящиков Gmail.com: 46 ящиков Ukr.net 5 ящиков Rambler.ru: 139 ящиков Bigmir.net: 5 ящиков Telenet.ru: 16 ящиков mymail-in.net: 72 ящиков Другие мылы: 4438 ящиков Обидно,конечно,но придётся мириться,блин...