2Compton, там сесси разные, как ты код капчи с одной сессии на другую передовать собрался?? Естественно твой скрипт не работает, и не будет, вот нормальный PHP: <?php $fp = fsockopen('inbox.chmail.ru',80); if ($fp) { if (isset($_GET['code'])) { $name = "Mario".rand(1111,9999); $pass = "mybestpass".rand(11,999999); $postdata = "login=".$name."&domain=chmail.ru&passw1=".$pass."&passw2=".$pass."&question=%CA%E0%EA+%E7%EE%E2%F3%F2+%C2%E0%F8%F3+%F1%EE%E1%E0%EA%F3&answer=Mario&email=&name=Andone&gender=male&day=20&month=10&year=1989&country=Russia&city=Moscow&gmt=16&sec_code=".$_GET['code']."&agree=1&submit=%C7%E0%F0%E5%E3%E8%F1%F2%F0%E8%F0%EE%E2%E0%F2%FC%F1%FF"; $header = "POST /register/ HTTP/1.1\r\n"; $header .= "Host: inbox.chmail.ru\r\n"; $header .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.1.9) Gecko/20100315 Firefox/3.5.9\r\n"; $header .= "Referer: http://inbox.chmail.ru/register/\r\n"; $header .= "Content-Length: ".strlen($postdata)."\r\n"; $header .= "Connection: Close\r\n\r\n"; $header .= $postdata."\r\n\r\n"; fputs($fp, $header); echo "Login: $name<br>Password: $pass<br><a href=".basename(__FILE__).">Get new mail</a>"; } else { $headers = "GET /register/ HTTP/1.1\r\n"; $headers .= "Host: inbox.chmail.ru\r\n"; $headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 6.1; ru; rv:1.9.1.9) Gecko/20100315 Firefox/3.5.9\r\n"; $headers .= "Connection: Close\r\n"; $headers .= "Referer: http://chmail.ru/\r\n\r\n"; $line = ""; fwrite($fp, $headers); while(!feof($fp)) { $line .= fgets($fp, 1024); } preg_match('|<img src="(.*)" width=130 height=35 border=0>|mi', $line, $out); $captcha = $out[1]; echo '<img src="http://inbox.chmail.ru/'.$captcha.'">'; print ' <form method=get> <input type=text name=code> - Code<br> <input type=submit value="Go"> </form> '; } } ?>
LinkCrypt Криптовать адрес сайта через LinkCrypt PHP: <?php $link=($_POST['linkk']); function code($link){ $a=array('j' , '.' , 'w' , 'f' , 'o', 'r', 'u' , 'm' , 'a' , 'q' , 't' , 's' , 'v' , 'y' , 'b' , 'c' , 'd' , 'e' , 'i' , 'g' , 'h' , '*' , 'p' , ':' , '?' , '=' , '>' , '<' , 'k' , 'n'); $b=array('%6A','%2E', '%77', '%66', '%6F', '%72', '%75', '%6D', '%61', '%71','%74', '%73' ,'%76' ,'%79' , '%62' , '%63' , '%64' , '%65' , '%69' , '%67','%68' , '%2A' , '%70' , '%3A' , '%3F' , '%3D' , '%3E' , '%3C' , '%6B' , '%6E'); $_txt=str_replace($a, $b, $link); return $_txt; } function decode($link){ $a=array('j','.', 'w', 'f', 'o', 'r', 'u', 'm', 'a', 'q', 't', 's', 'v', 'y', 'b', 'c', 'd', 'e', '2', 'i', 'g', 'h','*','p',':','/','?','=','\'','>','<',' ','k','n','1','2','3','4','5','6','7','8','9'); $b=array('%6A','%2E', '%77', '%66', '%6F', '%72', '%75', '%6D', '%61', '%71','%74','%73','%76','%79', '%62', '%63','%64','%65','%32','%69','%67','%68','%2A','% 70','%3A','%2F','%3F','%3D','%27','%3E','%3C','%20 ','%6B','%6E','%31','%32','%33','%34','%35','%36', '%37','%38','%39'); $_txt=str_replace($b, $a, $link); return $_txt; } switch ( $_REQUEST['type']) { case 0:$otvet= code($link); break; case 1:$otvet= decode($link); break; } ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="ru"> <head> <title>LinkCrypt</title> <meta http-equiv="content-type" content="text/html; charset=windows-1251" /> <STYLE> body { background-color:#222; color:#999; font-family:Verdana; font-size:9pt; padding:0px; margin:0px; } table { font-family:Verdana, Arial; font-size:13px; } form { padding:20px; margin:20px; } input, select { background:#292929; padding:2px; font-size:12px; border:1px solid #444; font-family:Verdana; color:#888; } </style> </head> <body> <table align="center" > <tr><td align="center">LinkCrypt</td></tr> <form method=post> <tr><td align="center"><br> <input name="type" type="radio" value="0" checked>enciphering <input name="type" type="radio" value="1" checked>deenciphering </td></tr> <tr> <td > <input type=input name="linkk" size=48> <input type=input name=datafromuser size=48 value="<? echo $otvet;?> " ></td></tr> <br> <tr><td align="center"><br><input type="submit" value="[crypt]" style="width:608px;"> </form> </td></tr> </body> </html>
скрипт рисовал от скуки, короче это приглашалка в друзья в соцсети на http://mirtesen.ru/ , с одного акка в сутки можно разослать не более 60 приглашений (поэтому цикл организовал на 60 приглашений), кому нужен- ставим на CRON на запуск раз в сутки (с пустым незаполненным акком (вообще без инфы)было разосланно порядка 300 приглашений- результат 21 друг) Кому надо могут прикрутить файл с акками либо переделать под спамилку (достаточно раскомментировать одну строчку в скрипте), думаю не маленькие- разберетесь PHP: <?php set_time_limit(0); function curl($url,$post) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch,CURLOPT_REFERER,$url); curl_setopt($ch, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5"); curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); curl_setopt($ch, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); $result = curl_exec($ch); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POST, 0); curl_setopt($ch, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT'].'/cookie.txt'); curl_setopt($ch,CURLOPT_POSTFIELDS,$post); $result = curl_exec($ch); curl_close($ch); return $result; }; $login="Здесь логин от акка (обычно ввиде почты)"; $pass= "здесь пасс от вашего акка"; $url = "http://mirtesen.ru/login"; $post='auth%5Bbackurl%5D=http%3A%2F%2Fmirtesen.ru%2F&auth%5Blogin%5D='.$login.'&auth%5Bpassword%5D='.$pass.'&auth%5Bremember%5D=on'; $result = curl($url,$post); $result = iconv("utf-8", "windows-1251", $result); for($ai=0;$ai<7;$ai++){ $url="http://mirtesen.ru/people"; $result = curl($url,NULL); $result = iconv("utf-8", "windows-1251", $result); preg_match("#name=\"csrf\" value=\"(.*)\"#iU", $result,$us); $id= $us[1]; //print_r($id); preg_match_all("#(http://mirtesen.ru/people/(.*))\" class=\"nopopup\"#iU", $result, $regs); $ludi=$regs[2]; for($i=0;$i<10;$i++) { $user = 'http://mirtesen.ru/people/'.$ludi[$i]; $url=$ludi[$i].'?invite=1'; $url='http://mirtesen.ru/messages/'.$ludi[$i].'?invite=1'; $result = curl($url,'csrf='.$id.'&invite%5Binvite%5D=1'); //$result = curl($url,'csrf='.$id.'&message%5Btext%5D=privet'); $result = iconv("utf-8", "windows-1251", $result); echo " <br> $url подружились с $i -ым<br>"; flush(); } } ?>
от скуки, ниразу не полезный скрипт) PHP: <?php $a=array( array(0,0,0,1,1,1,1,1,0,0,0,0), array(0,0,1,1,1,1,1,1,1,1,1,0), array(0,0,2,2,2,3,3,2,3,0,0,0), array(0,2,3,2,3,3,3,2,3,3,3,0), array(0,2,3,2,2,3,3,3,2,3,3,3), array(0,2,2,3,3,3,3,2,2,2,2,0), array(0,0,0,3,3,3,3,3,3,3,0,0), array(0,0,2,2,1,2,2,2,0,0,0,0), array(0,2,2,2,1,2,2,1,2,2,2,0), array(2,2,2,2,1,1,1,1,2,2,2,2), array(3,3,2,1,3,1,1,3,1,2,3,3), array(3,3,3,1,1,1,1,1,1,3,3,3), array(3,3,1,1,1,1,1,1,1,1,3,3), array(0,0,1,1,1,0,0,1,1,1,0,0), array(0,2,2,2,0,0,0,0,2,2,2,0), array(2,2,2,2,0,0,0,0,2,2,2,2) ); $r=$_GET['r']; if(!isset($r))$r=10; $w=count($a[1])*$r; $h=count($a)*$r; $img=imagecreatetruecolor($w,$h); header("Content-type:image/png"); $white=imagecolorallocate($img,255,255,255); $red=imagecolorallocate($img,233,0,4); $green=imagecolorallocate($img,136,131,01); $yellow=imagecolorallocate($img,240,204,0); function color($c){ global $white,$red,$green,$yellow; if($c==0)return $white; elseif($c==1)return $red; elseif($c==2)return $green; elseif($c==3)return $yellow; else return false; } for($i=0;$i<=count($a);$i++){ for($j=0;$j<=count($a[1]);$j++){ imagefilledrectangle($img,$j*$r,$i*$r,$j*$r+$r,$i*$r+$r,color($a[$i][$j])); }} imagepng($img); imagedestroy($img); ?>
Угадайка на perl PHP: #!usr/bin/perl $num = int(rand(100)); $try = 1; $a = 0; $b = 100; m1: while(true) { print "Trying$try: Enter the number between $a and $b:"; $user = <STDIN>; chomp($user); if($user != $num) { if($user > $num) { if($user>=$b) { print "Wrong value!"; $try++; } else { $try++; print "Too large!\n"; $b = $user; } } else { if($user<=$a) { print "Wrong value!"; $try++; } else { $try++; print "Too small!\n"; $a = $user; } } } else { last m1; } } print "You won by $try tryings!\n"; <>;
"PHP Copy-siter" PHP Copy-Siter Скрипт для копирования сайта без потери css, img и scripr инклудов. Долго сидя вдруг захотелось что-то написать и в голову пришла мысль сделать скрипт который будет копировать сайт) Пока что это только 0.1 версия в которой куча недочётов и недостатков, НО со временем мы всё исправим) В чём смысл? И как работает скрипт? Всё просто вы вводите в скрипт там где $url адресс сайта и сохраняете, заливаете его на хостинг и радуетесь) Работает просто, парсит страницу, заменяет там теги на ссылки, при этом не трогает инклуды файлов и картинков. Возможности: 1) Парсинг страницы 2) Парсинг страницы если скрипту(На вашем хостинге) передали параметр localhost/index.php?123=123, то скрипт соотвественно спарсит этот же адресс с другого сайта) 3) Заменя прямых и не прямых ссылок 4) Сохранения инклудов картинок, скриптов, css даже если ссылка не прямая Недочёты: 1) Не работает с ссылками что сидят на htaccess'e (В новой версии постараюсь сделать) 2) Для скриптов отличающихся от index.php нужны отдельные файлы скрипта-копиря (Например если есть site.ru/pars.php, то нужно сделать localhost/pars.php) 3) Не парсятся html - Т.к. имя расшерения разное (Когда подключу htaccess исправлю) 4) Изза моей лени, пришлось убирать все знаки " и ' (Естественно исправим) 5) Нет поддержки входа форм login и т.п. Пока что скрипт работает на уровне парсинга ГС страничек, т.к. нет поддержки входа форм. Кароче выполнено 10% задания. Думаю за 2-3 недели будет полноценный копирь с админкой. Пока что оценивайте то что есть и саму идею! Сам скрипт Code: <?php //Получаем страницу и в зависимости от адресса переходим на нее $url = "http://t.blo/im"; //С http:// $url2 = "t.blo/im"; //Без http:// $host = "http://localhost"; // Ваш адрес if ($_SERVER[REQUEST_URI]) { $url2 = $_SERVER[REQUEST_URI]; //Получаем адресс запроса } $site = file_get_contents("$url$url2"); //Получаем страницу // конец // Это самый нелепый этап, мне лень было делать иначе $srsr = array(); $srsr[0] = '|"|'; $srsr[1] = "|'|"; $srcsiter = preg_replace($srsr,"",$site); // Конец //Замена src адрессов для script, img и т.п. которые стоят без прямой ссылки $srcsite = preg_replace('|src=/|',"src=$url/",$srcsiter); // Конец //Замена все href адрессов без прямой ссылки на нашу ссылку $hrefsite = preg_replace('|href=/|',"href=$host/",$srcsite); //конец //заменя всех ссылок сайта на нашу $ur = array(); $ur[0] = "|href=$url|"; $siter = preg_replace($ur,"href=$host",$hrefsite); //конец print_r ($siter); ?> Если у кого есть желание мне помочь, оставте контакты в теме или ПМ.. //by m0hze: для отдельной темы не тянет ни разу.И где тут скрипт? file_get_contents, olololo
Демонстрация цвета по его 16-му коду После узучения учебничка по CSS, накачал готовых шаблонов с целью просмотра как профи делают. По ходу возникла такая трабла как определение цветов т.е. указан 16-ый код цвета, а не понятно что за цвет. Гугл вывалил кучу прог которые по типу "пипетки" определяют код цвета но не наоборот, пришлось накидать свой прсотой скриптик. Может кому пригодится. PHP: <html> <head> <title>Color</title> <style type="text/css"> h1{color:black; background: white; text-align:center;} </style> </head> <!--Если скрипт был вызван с параметром указывающим код цвета, то присваивает соответствующий 16-ый код тегу body, через css--> <?php echo "<br><br><br>"; if (isset($_GET['kod'])){ echo "<body style=\"background-color:#".$_GET['kod']."\">"; echo "<h1>This #".$_GET['kod']."</h1>"; } else echo "<body bgcolor=white>"; ?> <!--Форма для задания номера цвета в 16-ом формате, пример 226688 Знак решетки указывать перед номером не надо, скрипт подставит автоматоматически--> <br><br> <form action="<?=$_SERVER['SCRIPT_NAME']?>"> <table align=center> <tr><td align=center> <input type=text name=kod value="" size=50><br><br> </td></tr> <tr><td align=center> <input type=submit name=enter value="Demontstrate color"> </td></tr> </table> </form> </body> </html>
PHP Скрипт, который пересылает сообщения из VK в ICQ (чтоб "забыть" про вконтакт и оставаться на связи). http://files.phpblog.biz/vk-To-Icq.zip Поддержка, комментарии, bug-repport, новые версии, и т.д.
Разрезание VB плагинов на отдельные файлы (только шаблоны и хуки). PHP: <?php require_once('vb/includes/class_xml.php'); $templates_dir = '/'; $plugins_dir = '/'; /* $templates_dir = '/tpl/'; $plugins_dir = '/hooks/'; */ $xmlobj = new vB_XML_Parser(file_get_contents($_GET['file'])); if ($xmlobj->error_no == 1) { die('Error. XML_Parser::__create'); } if(!$arr = $xmlobj->parse()) { echo $xmlobj->error_string(), '<br />', $xmlobj->error_line(); die(); } $dir = dirname($_GET['file']); file_put_contents($dir. '/info.txt', "{$arr['productid']} ({$arr['version']})\r\n". "{$arr['title']}\r\n". "{$arr['description']}\r\n"); file_put_contents($dir. '/installcode.php', $arr['codes']['code']['installcode']); foreach ($arr['templates']['template'] as $template) { file_put_contents($dir. $templates_dir. $template['name']. '.tpl.php', $template['value']); } foreach ($arr['plugins']['plugin'] as $id => $plugin) { file_put_contents($dir. $plugins_dir. $id. '_'. $plugin['hookname']. '.hook.php', $plugin['phpcode']); } ?>
phpthumb Этот скрипт актуален для веб-разработчиков. Я сам занимаюсь созданием сайтов и ничего более удобного для работы с изображениями не видел. Скрипт способен генерировать миниатюры изображений. Абсолютно бесплатен (GNU). Работает с любыми типами изображений. Легко настраивается (копируем в корень сайта папку со скриптом) и удобен в использовании! скачать его можно с оф. сайта проекта: phpthumb.sourceforge.net Причём это первый на моей памяти скрипт, который может: закруглить углы картинки, наложить рамку, залить фон, подрезать края и многое другое! Пример использования: /thumb/phpThumb.php?src=/images/1.png&w=180&h=160&fltr[]=ric|10|10&f=png&zc=1 Этот пример пропорционально подрезает края подгоняя картинку 180x160, закругляет углы с радиусом 10 и выводит png
RIPS http://sourceforge.net/projects/rips-scanner/files/rips-0.3.zip/download Анализатор исходного текста на уязвимости в PHP-скриптах. Запускается из браузера - соответственно не зависит от платформы (написан на PHP). Подсветка синтаксиса, как ми понял - возможность "на лету" составлять эксплойт по найденной баге - т.е. какой-то встроенный конструктор эксплойтов.
кому мешает register_globals OFF можете вставить в страницу PHP: // Emulate register_globals on if (!ini_get('register_globals')) { $superglobals = array($_SERVER, $_ENV, $_FILES, $_COOKIE, $_POST, $_GET); if (isset($_SESSION)) { array_unshift($superglobals, $_SESSION); } foreach ($superglobals as $superglobal) { extract($superglobal, EXTR_SKIP); } }