1. Поиск говнокода

    Этот поиск практически ничего не может найти! Но вы всё-таки попытайтесь, вдруг повезет.

    Найдено: 98

  2. PHP / Говнокод #4356

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    <?
    // регистрационная информация (пароль #1)
    // registration info (password #1)
    $mrh_pass1 = "Morbid11";
    
    // чтение параметров
    // read parameters
    $out_summ = $_REQUEST["OutSum"];
    $inv_id = $_REQUEST["InvId"];
    $shp_item = $_REQUEST["Shp_item"];
    $crc = $_REQUEST["SignatureValue"];
    
    $crc = strtoupper($crc);
    
    $my_crc = strtoupper(md5("$out_summ:$inv_id:$mrh_pass1:Shp_item=$shp_item"));
    
    // проверка корректности подписи
    // check signature
    if ($my_crc != $crc)
    {
      echo "bad sign\n";
      exit();
    }
    
    // проверка наличия номера счета в истории операций
    // check of number of the order info in history of operations
    $f=@fopen("order.txt","r+") or die("error");
    
    while(!feof($f))
    {
      $str=fgets($f);
    
      $str_exp = explode(";", $str);
      if ($str_exp[0]=="order_num :$inv_id")
      { 
    	echo "Операция прошла успешно\n";
    	echo "Operation of payment is successfully completed\n";
      }
    }
    fclose($f);
    ?>

    учитесь, как надо с онлайн-наличкой работать
    http://www.robokassa.ru/Doc/demo_php.zip

    xXx_totalwar, 12 Октября 2010

    Комментарии (12)
  3. PHP / Говнокод #4353

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    function FormatCurrency($fSum, $strCurrency)
    {
    	return CurrencyFormat($fSum, $strCurrency);
    	/*
    	if (!isset($fSum) || strlen($fSum)<=0) return "";
    
    	$arCurFormat = CCurrencyLang::GetCurrencyFormat($strCurrency);
    
    	if (!isset($arCurFormat["DECIMALS"])) $arCurFormat["DECIMALS"] = 2;
    	$arCurFormat["DECIMALS"] = IntVal($arCurFormat["DECIMALS"]);
    	if (!isset($arCurFormat["DEC_POINT"])) $arCurFormat["DEC_POINT"] = ".";
    	if (!isset($arCurFormat["THOUSANDS_SEP"])) $arCurFormat["THOUSANDS_SEP"] = "\\"."xA0";
    	$tmpTHOUSANDS_SEP = $arCurFormat["THOUSANDS_SEP"];
    	eval("\$tmpTHOUSANDS_SEP = \"$tmpTHOUSANDS_SEP\";");
    	$arCurFormat["THOUSANDS_SEP"] = $tmpTHOUSANDS_SEP;
    	if (!isset($arCurFormat["FORMAT_STRING"])) $arCurFormat["FORMAT_STRING"] = "#";
    
    	$num = number_format($fSum, $arCurFormat["DECIMALS"], $arCurFormat["DEC_POINT"], $arCurFormat["THOUSANDS_SEP"]);
    
    	return str_replace("#", $num, $arCurFormat["FORMAT_STRING"]);
    	*/
    }

    1C-Bitrix,
    /bitrix/modules/catalog/include.php

    Under, 12 Октября 2010

    Комментарии (5)
  4. PHP / Говнокод #4030

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    <?php
    date_default_timezone_set('Europe/Kiev');
    header('Content-Type: text/html; charset=utf-8');
    /*Создаем класс объектной модели документа, что-то типа как в JS. */
    $dom = new domDocument;
    
    /*Загружаем наш ХТМЛ файл*/
    $dom->loadHTMLfile('page.html');
    
    /*Ищем всем елементы с тегом таблицы, в даном случае, он у нас один*/
    $table =  $dom->getElementsByTagName('table');
    
    /*Ищем все теги рядов внутри найденной таблицы, item(0) указывает на то, что нужнр брать только первую найденную таблицу. Ещё раз, таблица у нас одна!!!!!!!*/
    $rows = $table->item(0)->getElementsByTagName('tr');
    
    for($i=1;$i<=115;$i++){
        /*Циклом заносим в переменную $cols все данные колонок td для каждого ряда tr внутри таблицы */
        $cols = $rows->item($i)->getElementsByTagName('td');
        /*Выводим в браузер только первую колонку ряда TR, и это у нас имя, если поставить вместо ноля единицу, то выведет Фамилию, если 2-ку поставить, выведет возраст, тут думаю все понятно.*/
        echo $cols->item(3)->nodeValue." ";
    }
    
    
    /*ДОМАШНЕЕ ЗАДАНИЕ: поэксперементируйте!!! помогоает в обучении!!!*/
    
    /*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*/
    
    ?>

    dimiork, 19 Августа 2010

    Комментарии (30)
  5. PHP / Говнокод #3905

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    function or_encode($in)
    {
    $in = strtolower($in);
    $kod = array(
    'q'=>'qq1','w'=>'ww2','e'=>'ee3','r'=>'rr4','t'=>'tt5',
    'y'=>'yy6','u'=>'uu7','i'=>'ii8','o'=>'oo9','p'=>'pp10',
    'a'=>'aa11','s'=>'ss12','d'=>'dd13','f'=>'ff14','g'=>'gg15',
    'h'=>'hh16','j'=>'jj17','k'=>'kk18','l'=>'ll19','z'=>'zz20',
    'x'=>'xx21','c'=>'cc22','v'=>'vv23','b'=>'bb24','n'=>'nn25',
    'm'=>'mm26','('=>'))',')'=>'((','['=>']]',']'=>'[[','"'=>'\'\'',
    '$'=>'#&','!'=>'#@','%'=>'#%','*'=>'#^','/'=>'#\\','|'=>'#/','.'=>':',
    '-'=>'_','='=>'#__','>'=>'^%','<'=>'"%|','0'=>'!!\\',
    '1'=>'c4ca4238a0b923820dcc509a6f75849b',
    '2'=>'c81e728d9d4c2f636f067f89cc14862c','3'=>'eccbc87e4b5ce2fe28308fd9f2a7baf3',
    '4'=>'a87ff679a2f3e71d9181a67b7542122c','5'=>'e4da3b7fbbce2345d7772b0674a318d5',
    '6'=>'1679091c5a880faf6fb5e6087eb1b2dc','7'=>'8f14e45fceea167a5a36dedd4bea2543',
    '8'=>'c9f0f895fb98ab9159f51fd0297e236d','9'=>'45c48cce2e2d7fbdea1afc51c7c6ad26'
    );
    $decode = strtr($in,$kod);
    return $decode;
    }
    
    function or_decode($in)
    {
    $kod = array(
    'qq1'=>'q','ww2'=>'w','ee3'=>'e','rr4'=>'r','tt5'=>'t',
    'yy6'=>'y','uu7'=>'u','ii8'=>'i','oo9'=>'o','pp10'=>'p',
    'aa11'=>'a','ss12'=>'s','dd13'=>'d','ff14'=>'f','gg15'=>'g',
    'hh16'=>'h','jj17'=>'j','kk18'=>'k','ll19'=>'l','zz20'=>'z',
    'xx21'=>'x','cc22'=>'c','vv23'=>'v','bb24'=>'b','nn25'=>'n',
    'mm26'=>'m','))'=>'(','(('=>')',']]'=>'[','[['=>']','\'\''=>'"',
    '#&'=>'$','#@'=>'!','#%'=>'%','#^'=>'*','#\\'=>'/','#/'=>'|',
    ':'=>'.','_'=>'-','#__'=>'=','^%'=>'>','"%|'=>'<','!!\\'=>'0',
    'c4ca4238a0b923820dcc509a6f75849b'=>'1','c81e728d9d4c2f636f067f89cc14862c'=>'2',
    'eccbc87e4b5ce2fe28308fd9f2a7baf3'=>'3','a87ff679a2f3e71d9181a67b7542122c'=>'4',
    'e4da3b7fbbce2345d7772b0674a318d5'=>'5','1679091c5a880faf6fb5e6087eb1b2dc'=>'6',
    '8f14e45fceea167a5a36dedd4bea2543'=>'7','c9f0f895fb98ab9159f51fd0297e236d'=>'8',
    '45c48cce2e2d7fbdea1afc51c7c6ad26'=>'9'
    );
    $decode = strtr($in,$kod);
    return $decode;
    }
    
    function php_decode($in){
    $in  = or_decode($in);
    $php = eval($in);
    return $php;
    }

    зачем нам всякие md5()., sha1() и прочее?
    создадим свое!

    Morgan, 08 Августа 2010

    Комментарии (6)
  6. PHP / Говнокод #3760

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    void get_tomorrow_date( struct timeval *date ) 
    { 
    sleep( 86400 ); // 60 * 60 * 24 
    gettimeofday( date, 0 ); 
    }

    Программистский шедевр на индусском форуме на тему «как узнать завтрашнюю дату» остался непревзойденным.

    REDNES, 22 Июля 2010

    Комментарии (12)
  7. PHP / Говнокод #3520

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    <?php
        {
    		$iter = 10000; //количество итераций
    		$Xmax = array(1,1); //верхние границы
    		$Xmin = array(-1,-1); //нижние границы
    		$F    = 'cos($x[0])*cos($x[1])'; //подынтегральное выражение
    		$F2   = '$x[0]+5-sin($x[1])>=2'; //выражение, определяющее границы функции (если такового нет, впишите 0)
        }
    
        $U    = count($Xmin); //кратность интеграла
        $Xint = array();
        $x    = array();
        $SumH = 0;
    
        for ($i = 0; $i <= $U; $i++)
    		{
    			$Xint[$i] = $Xmax[$i] - $Xmin[$i];
    		}
        for ($j = 1; $j <= $iter; $j++)
    		{
    			for ($i = 0; $i <= $U; $i++)
    				{
    					$x[$i] = $Xmin[$i] + lcg_value() * $Xint[$i];
    				}
    			eval ("\$F1 = $F2;"); //левая часть выражения, определяющего границы функции  
    			if ($F1 !== 0) 
    				{
    					$InInt = false;
    					if ($F1) $InInt = true;
    					if (!$InInt) continue;
    				}
    			eval ("\$F3 = $F;");
    			$SumH += abs($F3);
    		}
    
        $rez = 1;
        for ($i = 0; $i <= $U-1; $i++)
    		{
    			$rez = $rez*$Xint[$i];
    		}
        $rez = ($SumH*$rez)/ $iter;
        echo ("Answer: $rez"); 
     ?>

    Программа, считающая интегралы

    TERAB1T, 21 Июня 2010

    Комментарии (38)
  8. PHP / Говнокод #3315

    +167

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    <?
    error_reporting(0);
    $b=array("Калининград","Вологда","Далматово","Дмитров","Архангельск","Владивосток","Краков");
    
    //конкурсный код:
    //begin
    for($i=0;$i<7;$i++){$s.="for(\$z[$i]=0;\$z[$i]<7;\$z[$i]++)";$n.="\$z[$i],";$q.="\$b[\$z[$i]],";}$f='for($i=0;$i<7;$i++){$l[$i]=strlen($b[$i])-1;$c[$i]=strtolower($b[$i]);for($j=0;$j<7;$j++)if($i!=$j&&$b[$i][$l[$i]]==strtolower($b[$j][0]))$e[$i]=true;}'.$s.'{$y=array('.$n.');sort($y);if($y==array(0,1,2,3,4,5,6)){$d=true;for($i=0;$i<6;$i++)if($d&&$c[$z[$i]][$l[$z[$i]]]!=$c[$z[$i+1]][0]&&($e[$z[$i]]||$c[$z[$i]][$l[$z[$i]]-1]!=$c[$z[$i+1]][0]))$d=!$d;if($d)$a=array('.$q.');}}';eval($f);
    //end
    print_r($a);
    
    
    
    echo "<br />";
    echo "<br />";
    
    
    
    //тоже самое в нормальном виде:
    
    for($i=0;$i<7;$i++)
    {
      $l[$i]=strlen($b[$i])-1;
      $c[$i]=strtolower($b[$i]);
      for($j=0;$j<7;$j++)  
      {
        if($i!=$j && $b[$i][$l[$i]]==strtolower($b[$j][0]))
        {
          $ecantUsePrelast[$i] = true;
        }
      }
    };
     
      for($z[0]=0;$z[0]<7;$z[0]++)
        for($z[1]=0;$z[1]<7;$z[1]++)
          for($z[2]=0;$z[2]<7;$z[2]++)
            for($z[3]=0;$z[3]<7;$z[3]++)
              for($z[4]=0;$z[4]<7;$z[4]++)
                for($z[5]=0;$z[5]<7;$z[5]++)
                  for($z[6]=0;$z[6]<7;$z[6]++)
                  {
                    $y=array($z[6],$z[5],$z[4],$z[3],$z[2],$z[1],$z[0]);
                    sort($y);
                    if($y==array(0,1,2,3,4,5,6))
                    {
                      $dcorrect=true;
                      for($i=0;$i<6;$i++)                    
                        if($dcorrect && $c[$z[$i]][$l[$z[$i]]]!=$c[$z[$i+1]][0] && ($ecantUsePrelast[$z[$i]] || $c[$z[$i]][$l[$z[$i]]-1]!=$c[$z[$i+1]][0]))
                          $dcorrect=!$dcorrect;
                      if($dcorrect)
                      {
                        $a=array($b[$z[0]],$b[$z[1]],$b[$z[2]],$b[$z[3]],$b[$z[4]],$b[$z[5]],$b[$z[6]]);
                      }
                    }
                  }    
           
     
    print_r($a);
    
    ?>

    Чтобы немного развеять "академическую" атмосферу на сайте, мы решили провести конкурс в стиле Code Golf (написать программное решение задачи, использовав минимальное количество символов)

    Задание: написать программу для игры «в города».

    На вход подается массив вида

    [Калининград, Вологда, Алматы, Дмитров, Архангельск, Тобольск, Краков]

    На выходе.

    [Архангельск, Краков, Вологда, Алматы , Тобольск, Калининград, Дмитров]

    xytop, 26 Мая 2010

    Комментарии (58)
  9. PHP / Говнокод #3255

    +165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    for($i=0; $i < $fldCount; $i++) {
          if($fldType[$i]==8) {
            eval("\$f_".$fld[$i]."_year = substr(\$f_".$fld[$i].", 0, 4);");
            eval("\$f_".$fld[$i]."_month = substr(\$f_".$fld[$i].", 5, 2);");
            eval("\$f_".$fld[$i]."_day = substr(\$f_".$fld[$i].", 8, 2);");
            eval("\$f_".$fld[$i]."_hours = substr(\$f_".$fld[$i].", 11, 2);");
            eval("\$f_".$fld[$i]."_minutes = substr(\$f_".$fld[$i].", 14, 2);");
            eval("\$f_".$fld[$i]."_seconds = substr(\$f_".$fld[$i].", 17, 2);");
          }
          else if ($fldType[$i]==6 && $fldValue[$i]) {
            ${"f_".$fld[$i]."_old"} = $fldValue[$i];
    
            $fileinfo = $db->get_row("SELECT * FROM `Filetable`
              WHERE `Field_ID` = ".$fldID[$i]." AND `Message_ID` = ".$message, ARRAY_A);
        
            if ($fileinfo) {
              ${"f_".$fld[$i]} = $SUB_FOLDER . rtrim($HTTP_FILES_PATH, "/") . $fileinfo["File_Path"] . "h_" . $fileinfo["Virt_Name"];
              ${"f_".$fld[$i]."_url"} = $SUB_FOLDER . rtrim($HTTP_FILES_PATH, "/") . $fileinfo["File_Path"] .        $fileinfo["Virt_Name"];
              ${"f_".$fld[$i]."_name"} = $fileinfo["Real_Name"];
              ${"f_".$fld[$i]."_size"} = $fileinfo["File_Size"];
              ${"f_".$fld[$i]."_type"} = $fileinfo["File_Type"];
            }
            else {
              preg_match("/^(.+?(\.[^.]+)?):(.+):(.+)$/", $fldValue[$i], $regs);
              ${"f_".$fld[$i]} = $SUB_FOLDER.$HTTP_FILES_PATH.$fldID[$i]."_".$message.$regs[2];
              ${"f_".$fld[$i]."_url"} = $SUB_FOLDER.$HTTP_FILES_PATH.$fldID[$i]."_".$message.$regs[2];
              ${"f_".$fld[$i]."_name"} = $regs[1];
              ${"f_".$fld[$i]."_size"} = $regs[4];
              ${"f_".$fld[$i]."_type"} = $regs[3];
            }
          }
        }

    И ещё один кусочек из того же файла (/netcat/message.php).

    telnet, 18 Мая 2010

    Комментарии (4)
  10. PHP / Говнокод #3020

    +163.2

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    $t_total_rows = 100;
    		$t_row_ids = array();
    
    		// Check total profile rows.
    		for($i = 1; $i <= $t_total_rows; $i++)
    		{
    				$result = $database -> database_query("SELECT `profilevalue_$i` FROM `se_profilevalues`");
    
    				if($result != FALSE)
    				{
    						$t_row_ids[] = $i;
    				}
    		}

    Нашел еще один кусок кода :)))
    Оригинальный подход для подсчета полей :))

    Rain, 16 Апреля 2010

    Комментарии (6)
  11. PHP / Говнокод #2377

    +173.5

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    function load_config ()
      {
        $res = mysql_query ('select * from configurations');
        while ($row = mysql_fetch_assoc ($res))
        {
          $n = $row[name];
          $v = $row[value];
          $str = '$_config[\'' . $n . '\'] = \'' . $v . '\';';
          eval ($str);
        }
        return $_config;
      }

    Загрузка конфига из базы данных.
    Продукт, где содержится _это_, продаётся за ~300$

    miami, 06 Января 2010

    Комментарии (18)