1. PHP / Говнокод #11677

    +57

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function SetImage($row=array())
    	{
         foreach($row as $property=>$value)
         	{
         	eval("\$this->".$property." = '".$value."';");
         	}
    	}

    minramilka, 30 Августа 2012

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

    +49

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    /**
      * Test for method importData()
      */
    public function testImportData()
    {
         $this->_model->expects($this->once())
             ->method('_importData');
         $this->_model->importData();
     }

    Ценное юнит-тестирование правильности работы метода

    InnerJoin, 30 Августа 2012

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

    +53

    1. 1
    2. 2
    3. 3
    $post_slug = explode("/", trim($_SERVER["REQUEST_URI"], " /"));
    $the_query = new WP_Query(array("name" => $post_slug[1],
                                    "post_type" => "conference"));

    И снова WordPress!'

    URL вида http://somesite.ru/conference/pervaya-konferentsiya-anesteziologov/program/

    varg242, 29 Августа 2012

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

    +51

    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
    <? 
    return true;
    				@ $db=mysql_connect('akapyan.localhost','akapyan','akapyan123');
    				if ( !$db)
    				 {
    echo "<h2 align=center>Приносим извенения !<br>Произошел сбой соединения,попробуйте зайти на сайт позднее...</h2>
    ";
    exit;
    				}
    				
    	$quer1="select * from obekt  ORDER BY `mm` DESC LIMIT 20  ";   
    												
    												mysql_select_db("db_akapyan");

    Весь код смысла нет приводить, там вообще ад не для слабонервных.
    Хочу уточнить файл инклудится не в функцию.
    Кроме того автор создает константы для того чтобы проверить загружался файл ранее или нет. Он просто не знал, что есть include_once.

    oooZinka, 29 Августа 2012

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

    +45

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    if($data['status'] == 1 ) {
             $data['status_a'] = 'selected="selected"';
             $data['status_d'] = false;
        } else {
              $data['status_a'] = false;
              $data['status_d'] = 'selected="selected"';
         }
     
    echo '<select id="status">
           <option value="1" '.$data['status_a'].'>Активный</option>
            <option value="0" '.$data['status_d'].'>Не активный</option>
    </select>';

    Мой говнокод, виноват! Но все же интересно было бы, как с таким справляются ?

    nepster, 29 Августа 2012

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

    +64

    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
    case 5: {
    			$im = imagecreatetruecolor(1024, 1024);
    			imagefill($im, 0, 0, imagecolorallocate($im, 255, 255, 255));
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/0.jpg"), 0, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/1.jpg"), 0, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/2.jpg"), 0, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/3.jpg"), 0, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/4.jpg"), 255, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/5.jpg"), 255, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/6.jpg"), 255, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/7.jpg"), 255, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/8.jpg"), 510, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/9.jpg"), 510, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/10.jpg"), 510, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/11.jpg"), 510, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/12.jpg"), 735, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/13.jpg"), 735, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/14.jpg"), 765, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im, imagecreatefromjpeg("core/temp/15.jpg"), 765, 765, 0, 0, 255, 255, 100);
    			imagepng($im, "core/".$name_tovar."/1.png");
    			$im2 = imagecreatetruecolor(1024, 1024);
    			imagefill($im2, 0, 0, imagecolorallocate($im2, 255, 255, 255));
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/16.jpg"), 0, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/17.jpg"), 0, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/18.jpg"), 0, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/19.jpg"), 0, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/20.jpg"), 255, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/21.jpg"), 255, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/22.jpg"), 255, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/23.jpg"), 255, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/24.jpg"), 510, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/25.jpg"), 510, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/26.jpg"), 510, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/27.jpg"), 510, 765, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/28.jpg"), 735, 0, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/29.jpg"), 735, 255, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/30.jpg"), 765, 510, 0, 0, 255, 255, 100);
    			imagecopymerge($im2, imagecreatefromjpeg("core/temp/31.jpg"), 765, 765, 0, 0, 255, 255, 100);
    			imagepng($im2, "core/".$name_tovar."/2.png");
    			// еще строк 60
    			imagepng($im5, "core/".$name_tovar."/5.png");
    		}

    ..и так далее.
    Прислал знакомый с комментарием:

    [18:18:48] брал 16 картинок
    [18:18:52] нужно было склеить в одну
    [18:19:04] ну и эти 16 картинок спарсить и т.д. и т.п.

    Это, как бы, только один кейс. Там таких 6, в 6 вообще чертовщина ужасная строк на 200.
    Всё это чудо занимает 858 строк несвежего кала весом в ~80кб.

    AlexT, 28 Августа 2012

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

    +57

    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
    <?php
    //...
    foreach ($month as $key=>$value)
    	{
    		if($value!=0)
    		{
    			$leased[$year[$key]] = $pay_leased->get_leased_pay($year[$key],$value);
    			$dialup[$year[$key]] = $pay_dialup->get_billing_pay($year[$key],$value);
    			$domain[$year[$key]] = $pay_domain->get_domain_pay($year[$key],$value);
    			$web[$year[$key]] = $pay_web->get_hosting_pay($year[$key],$value);
    
    			for ($d=1;$d<=31;$d++) // во всех месяцах по 31 дню, да
    			{
    				$leased[$year[$key]][$value][$d] = isset($leased[$year[$key]][$value][$d]) ? $leased[$year[$key]][$value][$d] : 0;
    				$dialup[$year[$key]][$value][$d] = isset($dialup[$year[$key]][$value][$d]) ? $dialup[$year[$key]][$value][$d] : 0;
    				$domain[$year[$key]][$value][$d] = isset($domain[$year[$key]][$value][$d]) ? $domain[$year[$key]][$value][$d] : 0;
    				$web[$year[$key]][$value][$d] = isset($web[$year[$key]][$value][$d]) ? $web[$year[$key]][$value][$d] : 0;
    			}
    			ksort($leased[$year[$key]][$value]);
    			ksort($dialup[$year[$key]][$value]);
    			ksort($domain[$year[$key]][$value]);
    			ksort($web[$year[$key]][$value]);
    
    			for ($c=1;$c<=31;$c++) // и еще
    			{
    				$leased[$year[$key]][$value][$c] = $leased[$year[$key]][$value][$c-1]+$leased[$year[$key]][$value][$c];
    				$dialup[$year[$key]][$value][$c] = $dialup[$year[$key]][$value][$c-1]+$dialup[$year[$key]][$value][$c];
    				$domain[$year[$key]][$value][$c] = $domain[$year[$key]][$value][$c-1]+$domain[$year[$key]][$value][$c];
    				$web[$year[$key]][$value][$c] = $web[$year[$key]][$value][$c-1]+$web[$year[$key]][$value][$c];
    				$sum[$year[$key]][$value][$c] = $leased[$year[$key]][$value][$c]+$dialup[$year[$key]][$value][$c]+$domain[$year[$key]][$value][$c]+$web[$year[$key]][$value][$c]; // вау, какая большая строка
    			}
    		}
    	}
    //...

    Досталось в подарок от предыдущих разработчиков. Наверное, я хреновый программист, если ничего не могу здесь понять...
    Комментарии мои, исходник вообще лишен комментариев.

    rsvasilyev, 28 Августа 2012

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

    +62

    1. 1
    if(!preg_match("/^[0-9]{10,10}+$/", $_POST['userPhone'])) echo ("Телефон задан в неверном формате");

    В тему о регулярках.
    http://www.smsfeedback.ru/smsapi/proverka_telefona_na_php.php

    1_and_0, 28 Августа 2012

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

    +56

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    function issets($text)
    	{
    	if (isset($text) && $text != '')
    		return 1;
    		else
    		return 0;
    	}

    По просьбам радиослушателей :) Отрывок из админки неизвестного автора.
    Кусочки http://govnokod.ru/11650 , http://govnokod.ru/11647 , http://govnokod.ru/11646

    kindofbear, 28 Августа 2012

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

    +59

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <?PHP
    $login = "";
    $pass = "";
    $md5_pass = "";
    eval(gzinflate(base64_decode('HJ3HkqNQEkU/
    ..........
    WIIgeFb//eeff/79z/8A')));//εσκεσ
    ?>

    Joomla - Virtuemart, файл addtocard.php
    расскажите зачем кодировать это 12 раз?
    Вот собственно это - http://pastebin.com/e3AMP9WN

    mkusher, 27 Августа 2012

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