ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > Программирование > PHP, PERL, MySQL, JavaScript
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #611  
Старый 06.02.2009, 10:30
Аватар для fatalo
fatalo
Участник форума
Регистрация: 15.05.2008
Сообщений: 166
Провел на форуме:
2591223

Репутация: 128
Отправить сообщение для fatalo с помощью ICQ
По умолчанию

Мое первое творение.Критика приветствуется
Парсер башорга с указанием кол-ва цитат + приятный диз
PHP код:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
"http://www.w3.org/TR/html4/loose.dtd"> 
<html> 
<head> 
<title>Bash.Org.Ru Reader</title> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
<link rel="stylesheet" href="includes/modalbox.css" type="text/css" media="screen" /> 
<style type="text/css">body, input, select {font-family : Arial, sans-serif;}

input, select, textarea {
    background: #C0FF82;
    border: 1px dotted Green;
    color: Black;
    margin-bottom: 5px;
}

form {
    border: 1px dotted Green;
    color: Black;
    padding-left: 5px;
    padding-top: 3px;
    margin-bottom: 3px;
}

body {
    background-color: #FEFF68;
    margin: 0px;
    padding: 2px;
    color: Black;
    font-size: small;
}

img {vertical-align: bottom;}
a {
    color: Blue;
}
a:hover {color: Blue;}
a:link {color: Blue;}
a:visited {color: Blue;}
a:active {
    color: Blue;
}
h3 {
margin: 3px;
}

div.head {
    background-color: #C0FF82;
    border: thin dashed Green;
    text-align: center;
    padding: 5px;
    margin-bottom: 2px;
}

div.title {
    background-color: #C0FF82;
    border: thin dashed Green;
    text-align: left;
    padding: 3px;
    margin-bottom: 2px;
}

div.body {
    text-align: center;
    padding-bottom: 5px;
}

div.bodyleft {
    text-align: left;
    padding-bottom: 5px;
}

div.body_t {
    border-left: thin dashed Green;
    border-right: thin dashed Green;
    border-top: thin dashed Green;
    margin-top: 5px;
    margin-bottom: 2px;
}

div.body_h {
    text-align: center;
    background-color: #C0FF82;
    padding: 3px 3px 3px 3px;
}

div.privat_from {
    background-color: #9ACD34;
    color: Black;
}

div.privat_to {
    background-color: #D98D00;
    color: Black;
}

div.foot {
    background-color: Green;
    text-align: center;
    font-size: 10px;
}

span.foot {
    background-color: Green;
    color: Yellow;
}

a.priv {
    color: Black;
    }</style></head> <body>

<?php
error_reporting
(0);

$action=$_POST['action'] ;
$action=ereg_replace("[^0-9]""60"$action);
if (
$action>51)
{ echo 
"Не корректно<br>
<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Ввести еще раз'>
<input type='hidden' name='lol' value='false'>
  </form><br><br>"
;break; }

if (
$_POST['lol']=='true'){


echo 
"<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Новое значение'>
<input type='hidden' name='lol' value='false'></form><br><br>"
;
$page file_get_contents('http://bash.org.ru/');  
preg_match_all('|<div>(.+)</div>|',$page,$result); 
for(
$i=0;$i<$action;$i++){ 
if ((
$i<>10)) {


echo 
"<font color=black>".$result[1][$i]."</font><br><br><div class='title' id='6689'></div><br>";}

}

echo 
"<form method='post' action=''>
<INPUT TYPE='submit' VALUE='Новое значение'>
<input type='hidden' name='lol' value='false'></form><br>"
;


}
else { echo 
"Введите количество первых цитат на странице <b>(от 1 до 51)</b> <br>
<form method='post' action=''>
       <input type='text' name='action' value='' size=2>
      <INPUT TYPE='submit' VALUE='Передать'>
<input type='hidden' name='lol' value='true' > </form>"
;}
echo 
"(с) <b><a href='http://forum.antichat.ru/member.php?u=56330'>fatalo</a href></b>";

?>
</div> 
</form> 
</div> 
<div> 
</div> 
</body> 
</html>

Последний раз редактировалось fatalo; 06.02.2009 в 10:39..
 
Ответить с цитированием

Simple reCaptcha by mr.The
  #612  
Старый 06.02.2009, 20:47
Аватар для mr.The
mr.The
Познавший АНТИЧАТ
Регистрация: 30.04.2007
Сообщений: 1,206
Провел на форуме:
4778940

Репутация: 1257


Отправить сообщение для mr.The с помощью ICQ
По умолчанию Simple reCaptcha by mr.The

PHP код:
<?php
/**
* Name: Simple reCaptcha 
* Author: mr.The
* Icq: 11889888
* Jabber: mr.The@jabber.org
* Description: Функция распознавания примитивной цифровой капчи(Раньше такая была на beesms.beeline.ua). Таблица соответствий составлена для него. можно попробовать изменить на другуй примитивную капчу. Удачи.
* Use: В качестве параметра функция принимает адрес к капче.
**/
    
function get_captcha($name){
    
$chars=array( // chr array
"0000000011110000000000000001111110000000000000110000110000000000011000000110000000000110000001100000000000110000110000000000000111111000000000000000111100000000" => "0",
"000000110000001000000000011111111110000000000111111111100000" => "1",
"00000011000001100000000001100000111000000000010000011010000000000100001100100000000001100110001000000000001111000010000000000001100000100000" => "2",
"0000010001000010000000000100010000100000000001101110011000000000001110111100000000000001000110000000" => "3",
"000000000111000000000000000011010000000000000001100100000000000000110001000000000000011111111110000000000111111111100000" => "4",
"0000011111001000000000000111110011000000000001000100011000000000010010000010000000000100100000100000000001001100011000000000010001111100000000000000001110000000" => "5",
"00000001111110000000000000111111110000000000011000100110000000000100010000100000000001000100001000000000011001100110000000000011001111000000" => "6",
"0000010000000110000000000100000011100000000001000001100000000000010000110000000000000100011000000000000001001100000000000000011110000000000000000111000000000000" => "7",
"0000000100011000000000000011101111000000000001101110011000000000010001000010000000000100010000100000000001101110011000000000001110111100000000000001000110000000" => "8",
"00000011110011000000000001100110011000000000010000100010000000000100001000100000000001100100011000000000001111111100000000000001111110000000" => "9");


    
$image=ImageCreateFromJpeg($name);
    
    
$K=100// коэф. черного цвета.
    
    
$x_max=50//размер картинки 
    
$y_max=20//размер картинки
    
$char_num=0;
    
$column_num=0;
    for(
$x=0;$x<$x_max;$x++){
        
$sum=0;
        
$str="";
        for(
$y=0;$y<$y_max;$y++){
            
//if($y==0) echo "<br>";
                
            
$color=imagecolorsforindex($imageimagecolorat($image$x$y)); 
            if(
$color['red']<=$K and $color['green']<=$K and $color['blue']<=$K) { // вычислям черный или нет. 1 или 0 соответственно.
                
$str.="1";
                
$sum++;
            }    else { 
                
$str.="0"
            }
            
        };
        if(
$sum>2) {
            @
$char[$char_num].=$str;
            
$column_num++;
        } else {
            
$char_num++;
            
$column_num=0;
        };
    
    };
    
    foreach(
$char as $key => $value){
        if(
strlen($value)<60) unset($char[$key]);
    };
    
    
    
$capcha="";
    foreach(
$char as $key){
    
        if(isset(
$chars[$key])) $capcha.=$chars[$key]; else $capcha.="X"// если не распознали символ, то X.
    
}
    
    return 
trim($capcha);

    
ImageDestroy($image);
}
?>
кагбэ вот. выложил за неактуальностью. можно попробовать переделать под аналогичную капчу, либо найти такую-же. Распознавал капчи вида со 100% вероятностью.

ЗЫ. пробелов в таблице соответствий НЕТ.
ЗЫЫ. по просьбам трудящихся: линк

Последний раз редактировалось mr.The; 07.02.2009 в 14:06..
 
Ответить с цитированием

  #613  
Старый 07.02.2009, 18:39
Аватар для art2222
art2222
Участник форума
Регистрация: 28.04.2008
Сообщений: 172
Провел на форуме:
1191083

Репутация: 270
Отправить сообщение для art2222 с помощью ICQ
По умолчанию

Функция возвращает строку с выделенными ссылками.
Т.е. передаем: Зайдите на сайт www.site.ru
Возвращает: Зайдите на сайт <a href="http://www.site.ru">www.site.ru</a>

PHP код:
    function light_urls($document)
    {    
        return 
preg_replace("/(http:\\/\\/|www.)(\\S+)/si",
                            
"<a href=\"http://\\2\">\\2</a>",
                            
$document);
    } 
ЗЫ может кому пригодится.
 
Ответить с цитированием

  #614  
Старый 07.02.2009, 18:48
Аватар для fatalo
fatalo
Участник форума
Регистрация: 15.05.2008
Сообщений: 166
Провел на форуме:
2591223

Репутация: 128
Отправить сообщение для fatalo с помощью ICQ
По умолчанию

Симулятор кидания костей.Показывает количество выпавших комбинаций,количество киданий и сумму всех выпавших чисел(switch case не использовал по определённым причинам)
PHP код:
<b><font color="red">Симулятор кидания костей</font></B>
<?
for
(
$i=1;$i<=20000;$i++)
{
    
$z=rand(1,6);
    
$c=rand(1,6);
    
$m=$z+$c;
    
$y=$y+$m;


if (
$m==2)
$w2=$w2+1;}
if (
$m==3)
$w3=$w3+1;}
if (
$m==4)
$w4=$w4+1;}
if (
$m==5)
$w5=$w5+1;}
if (
$m==6)
$w6=$w6+1;}
if (
$m==7)
$w7=$w7+1;}
if (
$m==8)
$w8=$w8+1;}
if (
$m==9)
$w9=$w9+1;}
if (
$m==10)
$w10=$w10+1;}
if (
$m==11)
$w11=$w11+1;}
if (
$m==12)
$w12=$w12+1;}

}

echo 
"<br><b>2</b>: ".$w2."<br>";echo "<b>3</b>: ".$w3."<br>";echo "<b>4</b>: ".$w4."<br>";echo "<b>5</b>: ".$w5."<br>";echo "<b>6</b>: ".$w6."<br>";echo "<b>7</b>: ".$w7."<br>";echo "<b>8</b>: ".$w8."<br>";echo "<b>9</b>: ".$w9."<br>";echo "<b>10</b>: ".$w10."<br>";echo "<b>11</b>: ".$w11."<br>";echo "<b>12</b>: ".$w12."<br>";
echo 
"<b>Количество бросков:</b> ".$i."<br>";
echo 
"<b>Общая сумма:</b> ".$y;

?>
<br><font color="gray">Показывает количество выпавших комбинаций,количество киданий и сумму всех выпавших чисел
<br>by <b><a href='http://forum.antichat.ru/member.php?userid=56330'>fatalo</a href></b></font>
ВСЕ коментарии приветствуются!

Последний раз редактировалось fatalo; 07.02.2009 в 19:03..
 
Ответить с цитированием

  #615  
Старый 07.02.2009, 18:49
Аватар для rushter
rushter
Reservists Of Antichat - Level 6
Регистрация: 23.05.2008
Сообщений: 756
Провел на форуме:
9257858

Репутация: 979


Отправить сообщение для rushter с помощью ICQ
По умолчанию

2 art2222
Быстрее и удобнее будет писать <a href="http://www.site.ru">www.site.ru</a> без всякого php,зачем лишние нагрузки ?

Последний раз редактировалось rushter; 07.02.2009 в 18:52..
 
Ответить с цитированием

Counter (графический счётчик на сайт)
  #616  
Старый 08.02.2009, 00:18
Аватар для Ru}{eeZ
Ru}{eeZ
Постоянный
Регистрация: 19.02.2008
Сообщений: 438
Провел на форуме:
956872

Репутация: 186
Отправить сообщение для Ru}{eeZ с помощью ICQ
По умолчанию Counter (графический счётчик на сайт)

RCounter 1.3
Графический счётчик на сайт.

Требуется:
- PHP
- GD2

В архиве:
counter.php - сама программа (ссылаться как на картинку)
counter.txt - база данных (дата, хиты, хосты, ипы...)
cImg_1.png - фоновый рисунок
cImg_2.png - второй фоновый рисунок
cImg_1.psd - PSD файл фонового рисунка

База данных вида:
Код:
182:13:08.02.09:237:28
212.3.144.173
94.179.98.182
81.25.36.188
89.250.2.150
93.189.204.67
89.105.226.15
79.172.28.66
80.81.223.50
93.100.248.127
213.231.37.30
87.228.83.23
92.100.6.99
212.3.144.54
Первая строка содержит Хиты_за_день:Хосты_за_день:С егодняшнюю_дату:Все_хиты:Вс е_хосты

Последующие строки содержат IP адреса зашедших за сегодняшний день.



Качнуть

Последний раз редактировалось Ru}{eeZ; 08.02.2009 в 15:31..
 
Ответить с цитированием

  #617  
Старый 09.02.2009, 02:13
Аватар для De-visible
De-visible
Banned
Регистрация: 06.01.2008
Сообщений: 904
Провел на форуме:
4037638

Репутация: 1821


Отправить сообщение для De-visible с помощью ICQ
По умолчанию

Парсер башорга, приятный вывод в файл, глаза не режет...

PHP код:
# -*- coding: cp1251 -*-
#BashOrg Parser
#c0ded By De-v aka De-visible
#http://forum.devisible.ru
#http://forum.antichat.ru
#HomePage: http://devisible.ru/wordpress/?p=109

import urllib,re,time


page
="300" #Страница которую парсить...
URLtext=urllib.urlopen("http://bash.org.ru/index/"+page)
txt=URLtext.read()
txt_=re.findall(r"<div>(.*?)<\/div>",txt.decode('cp1251'))
f=open("Bash.htm","a")
f.write('<html><body bgcolor="#666666" text=\"#D2D2D2\">')
for 
g in xrange(len(txt_)):
    
f.write('\n<br>'+'<div align="center">\
    <table border="1" width="100%" cellspacing="1" id="table1">\
    <tr>\
    <td bordercolor="#C0C0C0"><br>\
    <code><blockquote><p>'
+txt_[g].encode('cp1251')+'</p></blockquote><br>\
    &nbsp;</code></td>\
    </tr>\
    </table>\
    </div>'
+'<br><br>\n')
f.write('</body>\n</html>\n')
f.close
print u"Готово"
while 1:
    
time.sleep(5
+ в аттаче...

http://devisible.ru/wordpress/?p=109
http://forum.devisible.ru
Вложения
Тип файла: rar BashOrg.rar (1.1 Кб, 12 просмотров)

Последний раз редактировалось De-visible; 09.02.2009 в 02:16..
 
Ответить с цитированием

  #618  
Старый 10.02.2009, 08:48
Аватар для KATYA
KATYA
Участник форума
Регистрация: 09.02.2009
Сообщений: 229
Провел на форуме:
2856245

Репутация: 338
По умолчанию

Простенький генератор дорвеев. Создаёте две папки out и tpl, в первой будут сгенерированные страницы, а в tpl должен лежать шаблон генерируемой страницы. Скрипт работает и с русскими ключевыми словами.

index.php
PHP код:
<?php    if ($_POST['generate']) {      generate();  }else {      main_form();  }        function generate() {      $p=array();      if ($_POST['tpl'] && $_POST['keywords']) {          $_POST['keywords']=ereg_replace("(\r\n|\r)","\n",$_POST['keywords']);          $keys=explode("\n",trim($_POST['keywords']));            /* create pages array */          for($i=0;$i<intval($_POST['count']);$i++) {              list($k,$v)=each($keys);              if (!$v) {                  reset($keys);                  list($k,$v)=each($keys);              }              if (in_array(trim($v),$p)) {                  $v=trim($v).'_'.$i;              }              $p[]=trim($v);          }                      /* prepare template */          $tpl=implode('',file('./tpl/'.$_POST['tpl']));            /* generate links */          $z=1;          reset($p);          while(list($k,$v)=each($p)) {              $name=str_replace(' ','_',$v);              $l.='<a href="'.trim($z++).'.html">'.trim($v).'</a> ';          }            /* generate pages */          reset($p);          while(list($k,$v)=each($p)) {              $k++;              $name=trim($k++);                $tpl_out=str_replace('{TITLE}',$v,$tpl);              $tpl_out=str_replace('{KEYWORDS}',ereg_replace("(\r\n|\n|\r)","",implode(', ',$keys)),$tpl_out);              $tpl_out=str_replace('{DESC}',ereg_replace("(\r\n|\n|\r)","",implode(' ',$keys)),$tpl_out);              $tpl_out=str_replace('{LINK}',$l,$tpl_out);              $tpl_out=str_replace('{I}',$k,$tpl_out);              $tpl_out=str_replace('{ENTER}',trim($_POST['enter']),$tpl_out);                $fp=fopen('./out/'.$name.'.html','w');              fwrite($fp,$tpl_out);              fclose($fp);              print 'pages created -> '.$name.'.html<br>';              flush();          }          print '<font size=7 color="#FF0000">Захуярено!</font>';      }else {          print 'Блядь! Шаблон и слова где ****? <br>';      }  }    function main_form() {      ?>      <table width="400" border="0" cellspacing="2" cellpadding="0" align="center">          <form action="" method="post">          <tr>              <td>Стараниц стока:</td>              <td><input type="text" name="count" size="5" maxlength="5" value="5"></td>          </tr>          <tr>              <td><br>Вот шаблон:<br><br><br></td>              <?php              $a=array();              if ($handle opendir('./tpl')) {                  while (false !== ($file readdir($handle))) {                      if ($file != "." && $file != ".." && is_file('./tpl/'.$file)) {                          $a[]=$file;                      }                  }                  closedir($handle);              }              ?>              <td><select name="tpl">                      <?php while(list($k,$v)=each($a)) {?>                      <option value="<?php print $v;?>"><?php print $v;?></option>                      <?php ?>                  </select>              </td>          </tr>          <tr>              <td><br>Куда потом:<br><br><br></td>              <td><input type="text" name="enter" size="40" value="http://"></td>          </tr>          <tr>              <td>Ключевые словишки:</td>              <td><br>  <textarea cols="30" rows="10" name="keywords">  слово  слово 2  и так далее  </textarea>              </td>          </tr>          <tr><td colspan="2"><input type="submit" name="generate" value="Захуярить!"></td></tr>          </form>      </table>      <?php  }    ?>
tpl.html

Код HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">  <html>  <head>  <title>{TITLE}</title>  <meta http-equiv="KEYWORDS" content="{KEYWORDS}">  <meta http-equiv="DESCRIPTION" content="{DESC}">  </head>  <body>  <br>  <br>  <br>  <div align="center"><a href="{ENTER}">ENTER</a></div>  <br>  <br>  <br>  <div align="center">{LINK}</div>  </body>  </html>
Разумеется index.php должен лежать в корне.
 
Ответить с цитированием

Деление столбиком
  #619  
Старый 12.02.2009, 16:02
Аватар для -=Static=-
-=Static=-
Участник форума
Регистрация: 12.11.2006
Сообщений: 213
Провел на форуме:
347573

Репутация: 185
По умолчанию Деление столбиком

PHP код:
<?php
/**
* Ф-ция выполняющая деления одного числа на другое столбиком (как в младших классах школы)
* Диапазон допустимых значений: Только положительные числа длинной от 1 до 100 символов.

* $a - Делимое
* $b - Делитель

* Возвращаемый результат: array(int Результат, int Остаток)

* Коды ошибок:
* -1 = Делимое не попадает в допустимый диапазон
* -2 = Делитель не попадает в допустимый диапазон
* -3 = Делитель больше делимого
* -4 = Делитель <= 0
* -5 = Делимое  <= 0
*/

function columnDivision($a$b)
{
    
$a strval($a);
    
$b strval($b);
    
$aLen strlen($a);
    
$bLen strlen($b);
    
    if (
$aLen || $aLen 100) return -1;
    if (
$bLen || $bLen 100) return -2;
    if (
$b $a)              return -3;
    if (
$b <= 0)              return -4;
    if (
$a <= 0)              return -5;
    
    
    
    
$rest substr($a0$bLen);
    
$result "";
    
    for(
$i $bLen$i <= $aLen$i++) {
        
$j 0;
        while(
$rest >= $b) {
           
$j++;
           
$rest -= $b
        }
        
$result .= $j;
        if (isset(
$a[$i])) $rest .= $a[$i];
    }
    
    return array(
intval($result), intval($rest));
}

if (
file_exists("input.txt")) {
    
$bufer file_get_contents("input.txt");
    
$arInput explode(" "$bufer);
    
$arResult columnDivision(intval($arInput[0]), intval($arInput[1]));
    
file_put_contents("output.txt"implode(" "$arResult));
    echo 
'Division is complite. Result write in file <b>output.txt</b>';
} else {
    echo 
'No input file. <b>:(</b>';
}
 
Ответить с цитированием

Прокси-граббер с сайта Samair.ru
  #620  
Старый 12.02.2009, 21:37
Аватар для Gaus
Gaus
Участник форума
Регистрация: 08.02.2009
Сообщений: 196
Провел на форуме:
1420275

Репутация: 127
Thumbs up Прокси-граббер с сайта Samair.ru

Скрипт грабит HTTP прокси с первых 3-х страниц сайта samair.ru

PHP код:
<?
for($i=1;$i<3;$i++){
$file file_get_contents('http://www.samair.ru/proxy/proxy-0'.$i.'.htm') ; 
preg_match_all('#[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\:[0-9]{1,5}#'$file$out); 

foreach(
$out[0] as $line)
     {
     print 
$line."<br>";
     }
}
?>

Последний раз редактировалось Gaus; 18.02.2009 в 21:44..
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ