1. Список говнокодов пользователя increazon

    Всего: 23

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

    +150

    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
    function keySave($key, $url)
    	{
    		$db = 'i_keys';
    		$this->keyDelete($key, $url);
    		$insert['key'] = $key;
    		$insert['url'] = $url;
    		$this->db->insert($db, $insert);
    	}
    
    	function keyDelete($key, $url)
    	{
    		$db = 'i_keys';
    		$this->db->where('url', $url);
    		$this->db->where('key', $key);
    		$this->db->delete($db);
    	}

    Можно ли так делать для предотвращения полных дублей в базе? Чем это не очень хорошо?

    increazon, 10 Июля 2011

    Комментарии (24)
  3. JavaScript / Говнокод #6989

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    <script type="text/javascript">	
    ............................
    var titlePubOk = "<?php echo 'Показано'; ?>";
    var titlePubNo = "<?php echo 'Скрыто'; ?>";
    ............................
    </script>

    Вот обновляю систему и вдруг обнаружил собственный, самый натуральный говнокод. Это - невероятно!

    increazon, 18 Июня 2011

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

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    foreach ($firstQueryRes as $row)
    			{
    				$K = $this->ccnm;
    				$U = $this->getFncByCategory($row->category);  // compile material href //
    				$R = $row->category;
    				$W = $row->date;
    				$A = $row->huu_1;
    				$materialHref[$row->id_all] = site_url("$K/$U/$R/$W/$A");
    				$materialTitle[$row->id_all] = $row->name;
    			}

    Задание: расшифруйте какое польское плохое слово здесь инкапсулировано.

    increazon, 21 Апреля 2011

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

    +149

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    // get info from db
    		$results = $this->datadb->dataForIndex();
    		$data_['mainResult'] = $results['mainResult'];
    		$data_['pics'] = $results['pics'];
    		$data_['com'] = $results['com'];
    		$data_['huuInvert'] = $results['huuInvert'];
    		$data_['dateInvert'] = $results['dateInvert'];
    		$data_['type'] = $results['type'];

    Кусок со своего CMS. Да я знаю что можно объединить массивы, но иногда не все требуется из функции.

    increazon, 26 Марта 2011

    Комментарии (21)
  6. JavaScript / Говнокод #5433

    +146

    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
    // ==UserScript==
    // @name           dojki-remover
    // @namespace      A
    // @include        http://www.dojki.com/*
    // @include        http://dojki.com/*
    // ==/UserScript==
    
    var intervalID = window.setInterval(work, 500);
    var max_exicutionz = 9;
    
    function work()
    {
    	d_nested1 = document.getElementsByTagName("iframe")[0];
    	if (typeof(d_nested1) != "undefined") d_nested1.style.display='none';
    	d_nested2 = document.getElementsByTagName("iframe")[1];
    	if (typeof(d_nested2) != "undefined") d_nested2.style.display='none';
    	d_nested3 = document.getElementsByTagName("iframe")[2];
    	if (typeof(d_nested3) != "undefined") d_nested3.style.display='none';
    	if (max_exicutionz <= 0) clearInterval(intervalID);
    	max_exicutionz--;
    }

    GreaseMonkey скрипт для скрытия тизеров на порносайте. Дело в том что верхний IFRAME появляется на сайте сразу, но Обезьяна не вызывает выполнение скрипта и приходится ждать непонятно чего. Может кто понимает в чем дело?

    increazon, 28 Января 2011

    Комментарии (10)
  7. JavaScript / Говнокод #4813

    +145

    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
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    function parseHTML(text)
    {
        var t = text;
        var a = new Array();
    	var b = new Array();
        var cur = 0;
        var waiting_open_tag = true;
    	var last_cut = 0;
        for (var i = 0; i < t.length; i++)
        {
            cur = t.charAt(i);
            if (waiting_open_tag)
            {
                if (cur == '<')
    			{
    				a.push(t.substring(last_cut, i));
    				waiting_open_tag = false;
    				last_cut = i;
    			}
            }
    		else
    		{
                if (cur == '>')
    			{
    				a.push(t.substring(last_cut, i+1));
    				waiting_open_tag = true;
    				last_cut = i+1;
    			}
    		}
    		if (i == t.length-1)
    		{
    			a.push(t.substring(last_cut, i+1));
    		}
    
        }
    	// now reparse DOT"."
    	for (i = 0; i < a.length; i++)
    	{
    		y = a[i];
    		last_cut = 0;
    		for (z = 0; z < y.length; z++)
    		{
    			cur = y.charAt(z);
    			if (z == 0)
    			{
    				if ((cur == '<') || (cur == '&') || (cur == '\n'))
    				{
    					z = y.length + 981;
    					b.push(y.substring(last_cut, z+1));
    					continue;
    				}
    			}
    			if (cur == '.')
    			{
    				b.push(y.substring(last_cut, z+1));
    				last_cut = z+1;
    			}
    			if (z == y.length-1)
    			{
    				b.push(y.substring(last_cut, z+1));
    			}
    		}
    	}
        return b;
    }

    Эта функция разбивает строку на элементы массива. Граница разделения - это HTML tags ( < >) и точка (.)
    Функция сделана для подготовки текста к автоматическому переводу в Гугле - кто работал тот знает что запихнув большую строку ничего не получите.
    Я уже знаю ваши сопливые комментарии: RegExp. Собственно по этому это можно считать говнокодом ибо изобретен велосипед (но такого велосипеда в интернете нет). Ну а кто не Noob, прошу предоставить рабочий RegExp.

    increazon, 02 Декабря 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    $ptn = "^[а-яА-Я]{1,}$";
    $str = "т";
    ereg($ptn, $str, $matches);
    print_r($matches);

    Почему не видит русской маленькой буквы "т". Это из-зи юникода? ПХП - говно значит

    increazon, 30 Ноября 2010

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

    +150

    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
    private function sape()
    	{
    		$sapelinks = array('Ваша реклама <a href="http://www.remont-pr0.ru">будет</a> здесь!');
    		if ($this->sape_on)
    		{
    			if (!defined('_SAPE_USER')) define('_SAPE_USER', '3a2a5sd5a1dfas1fas154as3dd19391c');
    			require_once(_SAPE_USER.'/sape.php');
    			$fierce['charset'] = 'UTF-8';
    			$sape = new SAPE_client($fierce);
    			for ($i = 0; $i<16; $i++)
    			{
    				$item = $sape->return_links(1);
    				$sure = str_replace(' ', '', $sape->return_links(1));
                                    //$sape->return_links(1) заменить на $item выше
    				if ($sure <> '') $sapelinks[] = $item;
    			}
    		}
    		return $sapelinks;
    	}

    Подключил сапу к своей модной CMS. По желанию я зделал динамический вывод блока если ссылка существует. Но ошибся, в итоге вместо 3 ссылок выводилась одна. Сразу нашел ошибку, у меня чутье как у собак. Можете полюбоваться как красиво выводит в стиле вэб-2,0. Не то что ГЛУПЫЕ_И_ТУПЫЕ вэб мастера выводять комком снизу старницы. И разве я после этого не гений?

    Ссылка на страницу моего сайта с рекламой сапы: http://bit.ly/cl9sHP

    increazon, 01 Сентября 2010

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

    +146

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $this->load->model('Bimail');
    			$this->Bimail->beautymail(
    					$this->adminmail,
    					$this->input->post('mail'),
    					$$this->adminsubject,
    					$this->input->post('name'),
    					$this->input->post('text'));
    			$this->redirect('conn/ok');

    Как видите я написал два знака доллара на 5 строке. При таком вызове фукции у мея виснет httpd.exe (это Apach). Кто может объяснить почему?
    И еще: почему РНР не выдает ошибки?
    *Провернуть такую ошибку в простом коде не получилось.

    increazon, 05 Августа 2010

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

    +151

    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
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    function addimagesave()
    	{
    		if (!$this->Login->isLogged())
            {
                $this->loginto();
                return;
            }
            else $this->Login->Update();
    		$error = '';
    		$recordExists = false;
    		$post_name = trim($this->input->post('name'));
    		if ($post_name != '') $insert['file_name'] = $post_name;
    		// now need to get from db if id_all in i_pics
    		$this->db->where('id_all',$this->input->post('id_all'));
    		$this->db->limit(1);
    		$query = $this->db->get('i_pics');
    		if ($query->num_rows() == 1)
    		{
    			$row = $query->row();
    			$recordExists = true;
    			$file_name = $row->file_name;
    			$id_pics = $row->id_pics;
    		}
    		if (isset($_FILES['upload']) && ($_FILES['upload']['error'] == 0)) // is file loaded?
    		{
    			$ext = getExtensionOnly($_FILES['upload']['name']);
    			if ($post_name != '') $_FILES['upload']['name'] = $post_name.'.'.$ext;
    			else $post_name = delExtensionWithDot($_FILES['upload']['name']);
    			$_FILES['upload']['name'] = translitIt(delExtensionWithDot($_FILES['upload']['name'])).'.'.$ext;
    			$config['upload_path'] = './pics/';
    			$config['allowed_types'] = 'gif|jpg|png|bmp';
    			$this->load->library('upload', $config);
    			if ($this->upload->do_upload('upload'))
    			{
    				$this->General->setEmes(array('roster'=>"Картинку загружено."), true);
    				$data = $this->upload->data();
    				$insert['file_name'] = $data['file_name'];
    				// resize now
    				$config1['image_library'] = 'gd2'; // выбираем библиотеку
    				$config1['source_image'] = 'pics/'.$data['file_name'];
    				$config1['create_thumb'] = TRUE; // ставим флаг создания эскиза
    				$config1['maintain_ratio'] = true; // сохранять пропорции
    				$config1['width'] = 250; // и задаем размеры
    				$config1['height'] = 180;
    				// pre crack image for resizing! )))
    				$this->load->model('Image');
    				$this->Image->smartsigninto('pics/'.$data['file_name'], 250, 180);
    				$this->load->library('image_lib', $config1); // загружаем библиотеку
    				$this->image_lib->resize(); // и вызываем функцию
    				// now rename and owerwrite original image
    				$ext = getExtensionOnly($data['file_name']);
    				$fol = "pics/";
    				if (is_file($fol.$data['raw_name'].'_thumb.'.$ext))
    				rename($fol.$data['raw_name'].'_thumb.'.$ext, $fol.$data['file_name']);
    				else $this->General->setEmes(array('roster'=>"Файл *_thumb не был создан!"));
    				// now set new file size
    				$insert['size'] = round(filesize($fol.$data['file_name'])/1024 , 2);
    			}
    			else $this->General->setEmes(array('roster'=>$this->upload->display_errors()));
    		}
    		else // we need to try to rename assigned file if name is not empty and file exists
    		{
    			if ($recordExists && is_file('pics/'.$file_name) && ($post_name != ''))
    			{
    				$ext = getExtensionOnly($file_name);
    				$fol = "pics/";
    				$newName = translitIt($post_name).'.'.$ext;
    				if (is_file('pics/'.$newName))
    				{
    					$this->General->setEmes(array('roster'=>"Имя уже существует"), true);
    					$insert['file_name'] = $file_name;
    				}
    				else
    				{
    					rename($fol.$file_name, $fol.$newName);
    					$insert['file_name'] = $newName;
    				}
    			}
    		}
    		// prepare data to be ins or upd
    		$insert['lang'] = 'ru';
    		$insert['title'] = $this->input->post('title');
    		$insert['alt'] = $this->input->post('alt');
    		$insert['id_all'] = $this->input->post('id_all');
    		if ($recordExists)
    		{
    			$this->db->where('id_pics',$id_pics);
    			$this->db->update('i_pics', $insert);
    			$this->General->setEmes(array('roster'=>"Данные обновлены"), true);
    		}
    		else $this->db->insert('i_pics', $insert);
    		$this->redirect('roster/'.$this->input->post('type'));
    	}

    Функция - контроллер сохранения, resize на лету картинки для новости или прочей байды. Есть все проверки. Любая картинка которая приходит, становится размером 250, 180 , причем без растяжения. Это задача типа вписать прямоугольник в прямоугольник, которую я сейчас ночью выполнил - даже если картинка меньше оно впишет. I must be proud about this functionality! Заметим, что в интернете все и умеют что вырезать квадраты из картинки, а произвольный размер - НЕТ такого. Код выложен чтобы вы посмотрели, нравятся ли вам имена переменных, логическое мышление, форматирование, коментарии (на русском - то не мои коментарии). Код CodeIgniter powered.

    increazon, 25 Июня 2010

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