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

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

    Найдено: 384

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

    +147

    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
    <?php
    
    require_once 'MDB2.php';
    
    $dsn = "mysql://user:pass@localhost/db";
    
    $mdb2 = & MDB2::singleton($dsn);
    if (PEAR::isError($mdb2)) {
        die($mdb2->getMessage());
    }
    
    class DB {
    
        static private $instance = NULL;
        static private $mdb2 = NULL;
    
        private function  __construct() {
            self::$mdb2 = & MDB2::singleton();
            self::$mdb2->exec("SET NAMES utf8");
            self::$mdb2->setFetchMode(MDB2_FETCHMODE_ASSOC);
        }
    
        static function getInstance() {
            if(self::$instance == NULL) {
                self::$instance =  & new DB();
            }
            return self::$instance;
        }
    
        public function query($sql = false) {
            $res = self::$mdb2->query($sql);
            if (PEAR::isError($res)) {
                die($res->getMessage());
            }
            if(!$res->numRows()) {
                return FALSE;
            }
            return $res;
        }
    
        private function __clone() {
    
        }
    }
    
    
    class Page{
    
        public   $limit = 10;
        private $conn = FALSE;  
    
        function  __construct() {
            $this->conn = & DB::getInstance();
        }
    
        public function getPageList() {
    
            $result = FALSE;
    
            $sql = "SELECT * FROM table LIMIT ".$this->limit;
            $res = $this->conn->query($sql);
            if($res) {
                $result = $res->fetchAll();
            }
            
            return $result;
        }
    
    }
    
    $p = & new Page();
    $nodes = $p->getPageList(25);
    print '<pre>'.print_r($nodes, 1).'</pre>';
    
    ?>

    Дайте, пожалуйста, оценку такой конструкции. Не говнокод ли?

    cartman, 29 Июля 2010

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

    +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
    $config["maxcount"]=50;
    ...
    $qwe = mysql_query("SELECT * FROM ...");
    $i=0;
    while($i<$config["maxcount"]){
    	$asd=mysql_result($qwe, $i, 0);
    	$asdasd=mysql_result($qwe, $i, 1);
    	$asdasdasd=mysql_result($qwe, $i, 2);
    	if($asd&&$asdasd&&$asdasdasd){
    		...
    		$i=$i+1;	
    	}
    }

    Красивый код + красивые переменные.
    И что будет если $asd=0 или в результате запроса не 50 строк? xD

    XyHb, 29 Июля 2010

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

    +124

    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
    <?php
    //вот это наверное самый тупой вывод случаных ссылок из бд
    $zap="select * from stat";$zap=mysql_query($zap);$zap=mysql_num_rows($zap);$id=rand($zap-5,-1);
    $query="select * from stat where (id=$id)";$result=mysql_query($query);$r=mysql_fetch_array($result);$dop=$r[name];$inc=$r[inc];$inc = explode("<|>", $inc);$name=$inc[0];//первая ссылка
    $query="select * from stat where (id=$id+1)";$result=mysql_query($query);$r=mysql_fetch_array($result);$dop2=$r[name];$inc=$r[inc];$inc = explode("<|>", $inc);$name2=$inc[0];//Вторая ссылка
    $query="select * from stat where (id=$id+2)";$result=mysql_query($query);$r=mysql_fetch_array($result);$dop3=$r[name];$inc=$r[inc];$inc = explode("<|>", $inc);$name3=$inc[0];//третья ссылка
    $query="select * from stat where (id=$id+3)";$result=mysql_query($query);$r=mysql_fetch_array($result);$dop4=$r[name];$inc=$r[inc];$inc = explode("<|>", $inc);$name4=$inc[0];//четвертая  ссылка
    $query="select * from stat where (id=$id+4)";$result=mysql_query($query);$r=mysql_fetch_array($result);$dop5=$r[name];$inc=$r[inc];$inc = explode("<|>", $inc);$name5=$inc[0];//пятая ссылка
    ?>
    <a href="<?php echo ("$nhost/stat/$dop/");?>"><?php echo ("$name");?></a>
    <a href="<?php echo ("$nhost/stat/$dop2/");?>"><?php echo ("$name2");?></a>
    <a href="<?php echo ("$nhost/stat/$dop3/");?>"><?php echo ("$name3");?></a>
    <a href="<?php echo ("$nhost/stat/$dop4/");?>"><?php echo ("$name4");?></a> 
    <a href="<?php echo ("$nhost/stat/$dop5/");?>"><?php echo ("$name5");?></a>
    </b>
    <div  class="artif" ></div>

    Vasiliy, 29 Июля 2010

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

    +119

    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
    <?php
    session_start();
    @include("config.php");
    //Необходимо подключиться к БД
    $link = mysql_connect($DBSERVER, $DBUSER, $DBPASS)
    or die("Не могу подключиться" );
    // сделать $DB текущей базой данных
    mysql_select_db($DB, $link) or die ('Не могу выбрать БД');
    echo "<h2>Страница активации</h2>";
    $uniq = $_GET['id'];
    if($_GET['id']='') { echo "Вы зашли на страницу без кода подтверждения"; }
    elseif ($_GET['id'] != '') {
    $log = mysql_query("SELECT * FROM users WHERE uniq_id='$uniq'");
    $idi = mysql_query("SELECT status FROM users WHERE uniq_id='$uniq'");
    if (empry($log)) { echo "Такой профиль не существует"; }
    elseif(isset($log) AND $idi = 1) {echo "Данный профиль уже активирован"; }
    elseif(isset($log) AND $idi = 0) {
    $r=@mysql_query("UPDATE users SET status=1 WHERE status=0 AND uniq_id='$uniq' ");
    echo '<h2>Ваша учетная запись активирована.</h2><br> Теперь вы можете <a href="index.php">войти на сайт</a> используя данные указанные при регистрации';
    }
    }
    ?>

    Vasiliy, 27 Июля 2010

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

    +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
    include_once("xtemplate.class.php");
    include_once("functions.php");
    include_once("constants.php");
    include_once("db.php");
    
    $cat=(!empty($_GET['cat']))?(trim($_GET['cat'])):'index';
    
    switch($cat)
    {
        
        default:
    	  $buf=mysql_query("SELECT * FROM ".CAT_TABLE." WHERE cat_name='{$cat}' LIMIT 1",$db);
    	  $kol=mysql_num_rows($buf);
    	  if($kol!=0)
    	  {
    		$templ=new XTemplate("./style/static.xtpl");
    		$templ->assign('SITENAME',SITENAME);
    		$cat=mysql_fetch_assoc($buf);
    		mysql_freeresult($buf);
    		$page=(!empty($_GET['p']))?(trim($_GET['p'])):$cat['cat_start'];
    		
    		$buf=mysql_query("SELECT * FROM ".PAGES_TABLE." WHERE name='{$page}' AND cat={$cat['id']} LIMIT 1",$db);
    		$row=mysql_fetch_assoc($buf);
    		mysql_freeresult($buf);
    		
    		bb($row['content']);
    		$templ->assign('PAGE_TITLE',$row['title']);
    		$templ->assign('TITLE',$row['title']);
    		$templ->assign('CONTENT',$row['content']);
    		show_menu($cat['cat_name']);
    		out('static');
    	  }
    	  else
    	  {
    		header("Location: index.php");
    	  }
    }

    вот такая брутальная index страница попалась в переработку

    zloiia, 27 Июля 2010

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

    +143

    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
    $db = new sql_db($server_db, $user_db, $pass_db, $name_db);
    $db->sql_query("SELECT * FROM `".$prefix."_global` WHERE `name`='global';");
    $row = $db->sql_fetchrow();
    
    define("LANGUAGE_ADMIN","{$row['language_admin']}");
    define("MODUL_HOME_ADMIN","{$row['home_modul_adm']}");
    define("THEMA_ADMIN","{$row['thema_admin']}");
    
    require_once ("language/".LANGUAGE_ADMIN."/ind.php");
    
    if(IN_ADMIN){
    define("IN_ADMIN", TRUE);
    
    	if (!file_exists ("modules/".MODUL_HOME_ADMIN."/index.php"))
    	die (UNIT_NO_DEFAULT);
    	
    	if (isset($_GET ['am'])){ $MODULES = $_GET ['am']; }
    	else { $MODULES = MODUL_HOME_ADMIN; }
    
    	if (file_exists ("modules/".$MODULES."/index.php")) { 
    		require ("modules/".$MODULES."/index.php");
    	}
    	else{ echo UNIT_IS_NOT_FOUND; }
    	
    	if (file_exists (Subject_file_path)) {
    		$TEMPLATES_SITE = file_get_contents(Subject_file_path);
    	}
    	else{
    		echo SUBJECTS_NOT;
    	}
    
    	require(Connect_funct_temp);
    
    	echo $COD_TEMP;
    
    if(!check_user($UserID)) logout();
    
    } else { require(Authorisation_file_path); }

    Пишу CMS и просто интересно мнение... Код короткий, так как многое через define()
    И очень интересно Ваше мнение по нему, зачем define(), чтобы человек первый встречный не наизменял там чего, чтото типа защита от ламера, НО от ЛАМЕРА только) Просто программер так всё поймёт...

    Кароче я тут в первые, и поэтому я ХЗ чё вам сказать ещё))

    nethak, 21 Июля 2010

    Комментарии (403)
  8. Куча / Говнокод #3693

    +129

    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
    for i in 14 15 27 29 38; do # make a sed string to replace special characters
        hexval=$(printf \\\\x%02x $i)
        sedstr=$sedstr"s/'$hexval/chr($i)||'/g;s/$hexval'/'||chr($i)/g;s/$hexval/'||chr($i)||'/g;"
    done
    
    cat <<EOF | sqlplus -S $DB_LOGIN | sed $sedstr | awk -v dbdir=db/data '{print > dbdir"/"$3".sql"}'
    $SPINIT
    BEGIN
      FOR i IN (SELECT * FROM USER_OBJECTS WHERE OBJECT_TYPE='TABLE' ORDER BY OBJECT_NAME) LOOP
        DECLARE
          all_cols VARCHAR2(32767) := '';
          TYPE data_cur_type IS REF CURSOR;
          data_cur data_cur_type;
          ins_str VARCHAR2(32767);
        BEGIN
          FOR j IN (SELECT DISTINCT(COLUMN_NAME) FROM USER_TAB_COLUMNS
                    WHERE TABLE_NAME=i.OBJECT_NAME AND
                    DATA_TYPE IN ('VARCHAR2', 'CHAR', 'NUMBER', 'DATE')
                    ORDER BY COLUMN_NAME) LOOP
            all_cols := all_cols || j.column_name || ',';
          END LOOP;
          IF all_cols is null THEN GOTO end_of_loop; END IF;
          all_cols := RTRIM(all_cols,',');
        
          OPEN data_cur FOR 'select ' ||
           '''INSERT INTO ' || i.object_name || ' (' || all_cols || ') VALUES (' || '''''''||' || replace(all_cols, ',', '||'''''',''''''||') || '||'''''');''' ||
           ' from ' || i.object_name || ' order by ' || all_cols;
          LOOP
            FETCH data_cur INTO ins_str;
            EXIT WHEN data_cur%NOTFOUND;
            dbms_output.put_line(ins_str);
          END LOOP;
          CLOSE data_cur;
        END;
    <<end_of_loop>> NULL;
      END LOOP;
    END;
    /
    EOF

    Проблеме экранирования посвящается.
    На стыке технологий: экспорт данных из БД в виде insert-ов. Там еще есть awk-шный код по разбору всего, что получилось, но он не такой ужасный.
    Автор я, если чо:)

    nil, 13 Июля 2010

    Комментарии (4)
  9. SQL / Говнокод #3691

    −864

    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
    Гавнокод --
    
    SELECT * FROM  Table1
    WHERE [Id] not in 
    		(
    		SELECT min([Id]) FROM Table1
    		WHERE [Code] in 
    				(
    				SELECT [Code] FROM Table1
    				GROUP BY [Code]									HAVING count([Code]) > 1
    				)
    					GROUP BY [Code]
    		)
    	and [Id] in 
    		(
    				SELECT [Id] FROM Table1
    				WHERE [Code] in (
    						SELECT [Code] FROM Table1
    						GROUP BY [Code]
    						HAVING count([Code]) > 1
    						)
    		)
    
    
    Нормальний варіант --
    
    SELECT * FROM Table1 AS a
    WHERE [Id] not in 
    		(
    			SELECT min([Id]) FROM a_ListParam
    			WHERE a_ListParam.[Code] = a.[Code]
    		)

    O_O, 12 Июля 2010

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

    +164

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function banByIP($ip) {
    	$result = mysql_query("SELECT * FROM `" . $GLOBALS['mysql_bans_table'] . "` WHERE `ip` = '" . mysql_real_escape_string($ip) . "' LIMIT 1");
    	while ($ban = mysql_fetch_assoc($result)) {
    		return $ban;
    	}
    }

    Из движка TinyIB.

    telnet, 29 Июня 2010

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

    +159

    1. 1
    2. 2
    3. 3
    $sql="SELECT * FROM `obmennik_files` WHERE(`id`='$ofile_id' && `id_user`='$user[id]') LIMIT 1"; 
    $row=mysql_fetch_assoc(mysql_query($sql)); 
    if(!is_array($row)) echo'Этот файл не найден.<br />';

    из мода к dcms)

    DmitryDick, 27 Июня 2010

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