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

    +162.8

    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
    <?php 
       function db_connect($host, $user, $pass, $db) {
           global $glink;
           $glink = mysql_connect($host, $user, $pass) or db_give_error(3, '', db_error($glink));
            mysql_select_db($db, $glink) or db_give_error(4, '', db_error($glink));
    		mysql_query("SET CHARSET cp1251",$glink);
           return $glink;
       }
       
       function db_query($sql, $log = 0) {
           global $glink;
           $res = mysql_query($sql, $glink) or db_give_error(5, $sql, db_error($glink));
           return $res;
       }
                
       function db_fetch_row($res) {
           $row = empty($res) ? false : mysql_fetch_row($res);
           return $row;
       }
       
       function db_num_rows($res, $stmt = '') {
           $rows = mysql_num_rows($res); 
           if (null === $rows) db_give_error(6, '', db_error($glink));
           return $rows;
       }
      
       function db_num_fields($res, $stmt = '') {
           $fields = empty($res) ? false : mysql_num_fields($res);
           if (null === $fields) db_give_error(7, '', db_error($glink));
           return $fields;
       }
        
       function db_field_name($res, $fld) {
           $name = (empty($res) or !isset($fld)) ? false : mysql_field_name($res, $fld);
           if (false === $name) db_give_error(8, '', db_error($glink));
           return $name;
       }
       
       function db_affected_rows($res) {
           global $glink;
           $rows = mysql_affected_rows($glink); 
           if (null === $rows) db_give_error(9, '', db_error($glink));
           return $rows;
       }
    
       function db_insert_id($id = 0) {
           $id = mysql_insert_id();
           return ($id) ? $id : 1;
       }
       
       function db_next_id($table, $field, $seqname = 'seq') {
           return 0;
       }
       
       function db_errno($res) {
           return mysql_errno($res);
       }
       
       function db_error($res) {
           return mysql_error();
       }
       
       function db_free_result($res) {
           $res = mysql_free_result($res);
           return $res;
       }
    ?>

    Все из того же проекта (http://govnokod.ru/2929). авторам видимо надоело писать mysql_ и они решили сделать свой аналог db_. При чем смысла от этого полный NULL. Говнокод, он и в Африке говнокод

    Запостил: MoLe-X, 05 Апреля 2010

    Комментарии (23) RSS

    • да, кстати. ф-ция db_give_error() нечего не делает. её внутренности закоментированы!!!
      Ответить
    • а вдруг они хотят написать модули для разных БД и не завязываться на mysql? так подключил нужный файл и не надо исправлять в коде работу с базой.
      хотя код все равно попахивает
      Ответить
      • unfunk
        вряд ли, есть еще файлик для mssql, так там совсем по другому ф-ции обозваны
        Ответить
        • ну тогды у них говнокод мозга
          Ответить
        • Похоже им кто-то показал database.mysql.inc от друпала. И решили наши скатологические друзья сделать все как у больших.
          Ответить
    • Вот тут и ощущается нехватка ООП.
      Ответить
    • тут писала школота и разбираться в этом довольно запарно..
      Ответить
    • Очередной детский лисапед. Про pdo они, походу, вообще не слышали.
      Ответить
    • Хехехе. Напоминает мой "универсальный" велосипед. Только я запоминал префикс ("mysql", "mssql", и т.п.) и синтезировал имя вызываемой функции на лету. =)
      Ответить
    • А мне db_next_id ф-ция нравится:)
      return 0; в любом случае:)
      Ответить
    • свой mysql с блэк джэком и шлюхами =)
      Ответить
    • Согласен с вышесказанном - школокод!
      Ответить
    • Кто это писал, был на верном пути. Но сыровато. Можно было чуток добавить своей функциональности и в будущем менять базы как перчатки не лазя в код в принципе. Все когда то писали так же:)
      Ответить

    Добавить комментарий