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

    Всего: 1

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

    −1

    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
    <?php include "init.php"; ?>
    <?php
    if(trim($_GET['mode'])=='ajax'){
    header('Content-Type: application/json; charset=utf-8');
    if(trim($_POST['action'])==htmlspecialchars(trim($_GET['script']))){
    $result=array();
    $result['errors']=array();
    if(trim($_POST['email'])==''){
    $result['errors']['email']=l('login_error_email_empty');
    } else {
    $check=mysql_query("SELECT * FROM `users` WHERE `email`='"._F($_POST['email'])."' OR (`phone`!='' AND `phone`='"._F(preg_replace('/\D/', '', $_POST['email']))."');");
    if(mysql_num_rows($check)){
    $user=mysql_fetch_assoc($check);
    } else {
    $result['errors']['email']=l('login_error_email_inexists');
    }
    }
    if(trim($_POST['password'])==''){
    $result['errors']['password']=l('login_error_password_empty');
    } elseif(mysql_num_rows($check) && $user['password']!=md5(trim($_POST['password']))){
    $result['errors']['password']=l('login_error_password_incorrect');
    } elseif($user['active']=='0'){
    $result['errors']['form']=l('login_error_account_inactive');
    } elseif($user['active']=='2'){
    $result['errors']['form']=l('login_error_account_removed');
    } elseif($user['active']=='3'){
    $result['errors']['form']=l('login_error_account_banned');
    }
    if(count($result['errors'])==0){
    $_SESSION['userid']=$user['userid'];
    mysql_query("UPDATE `users` SET `login_time`='".$time."' WHERE `userid`='".$_SESSION['userid']."';");
    $result['status']='success';
    } else {
    $result['status']='error';
    }
    echo json_encode($result);
    }
    exit;
    }
    ?>
    <?php
    $pagetitle=l('login_title')." • ".$config['sitename'];
    $pagedesc=$config['description'];
    ?>
    <?php
    if($m){ include "m-login.php"; exit; }
    ?>
    <?php include "inc/header.php"; ?>
    
    <div class="row">
    <div class="col-md-3"></div>
    <div class="col-md-6">
    <h3 class="special-title"><?php echo l('login_title'); ?></h3>
    <div class="auth-box">
    <form action="/<?php echo htmlspecialchars(trim($_GET['script'])); ?>/" method="POST" autocomplete="off" class="ajax-form" data-callback="loginCallBack">
    <input type="hidden" name="action" value="<?php echo htmlspecialchars(trim($_GET['script'])); ?>">
    <div class="form-group">
    <label><?php echo l('login_type_email'); ?></label>
    <div>
    <input type="text" autocomplete="off" class="form-control" name="email" placeholder="<?php echo l('login_email'); ?>" autofocus>
    </div>
    </div>
    <div class="form-group">
    <label><?php echo l('login_type_password'); ?></label>
    <div>
    <input type="password" autocomplete="off" class="form-control" name="password" placeholder="<?php echo l('login_password'); ?>">
    </div>
    </div>
    <button type="submit" class="btn btn-primary"><?php echo l('login_submit'); ?></button>
    <div class="cannot-login">
    <a href="<?php echo $locPrefix; ?>/restore/" class="pull-left"><?php echo l('login_cant_login'); ?></a>
    <a href="<?php echo $locPrefix; ?>/register/" class="pull-right"><?php echo l('login_to_register'); ?></a>
    <div class="clear"></div>
    </div>
    </form>
    </div>
    </div>
    <div class="col-md-3"></div>
    </div>
    
    <div class="social-login-title">
    <?php echo l('login_via_social_network'); ?>
    </div>
    
    <div class="social-login"><a href="/social/vk/<?php if(isset($_GET['ref'])){ ?>?ref=<?php echo urlencode($_GET['ref']); ?><?php } ?>" class="vkontakte"><i class="fa fa-vk"></i></a><a href="/social/ok/<?php if(isset($_GET['ref'])){ ?>?ref=<?php echo urlencode($_GET['ref']); ?><?php } ?>" class="odnoklassniki"><i class="fa fa-odnoklassniki"></i></a><a href="/social/fb/<?php if(isset($_GET['ref'])){ ?>?ref=<?php echo urlencode($_GET['ref']); ?><?php } ?>" class="facebook"><i class="fa fa-facebook"></i></a><a href="/social/gl/<?php if(isset($_GET['ref'])){ ?>?ref=<?php echo urlencode($_GET['ref']); ?><?php } ?>" class="google"><i class="fa fa-google"></i></a></div>
    
    <?php include "inc/footer.php"; ?>

    В среде "PHP"-разработчиков часто слышатся возбуждающие аппетит к ветчине повизгивания о том, что, дескать, без фреймворков не жизнь, чистый "PHP" - говно, и что без "Laravel" охуенный проект не создать. Но взгляните на вышеприведённый код страницы авторизации в одном из разработанных мною движков и задайте себе вопрос: зачем делить один ладненький, компактненький скриптик на контроллеры, модели, шаблоны, интерфейсы, и, как следствие, конское количество директорий, когда и "HTML"-представление, и "AJAX"-обработчик можно впихнуть в один файл на, в данном случае, полтора-два экрана? Чем обусловлена массовая течка по "MVC" и смежным архитектурам (к слову, не только лишь в "PHP", но и, слышно, в "Ruby" и "NodeJS")?

    HornyPorny, 18 Июля 2018

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