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

    +141

    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
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    <?php
    
    $sub = $_POST['sub'];
    
    if ($sub == "Поменять"){
    
    $player1 = $_POST['player1'];
    $player2 = $_POST['player2'];
    
    // количество дней
    $days = "";
    $fl = "sys/days.cou";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $days .= fgets($fp,2);
    }
    fclose($fp);
    
    // РАБОТА С ИМЕНАМИ
    
    // считываю имя первого pl1 - саша
    
    $name1 = "";
    $fl = "db/player".$player1.".nm";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $name1 .= fgets($fp,2);
    }
    fclose($fp);
    
    // новый файл pl2_ саша
    
    $fl = "db/player".$player2.".nm_";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name1);
    fclose($fp);
    
    // считываю имя второго pl2 маша
    $name2 = "";
    $fl = "db/player".$player2.".nm";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $name2 .= fgets($fp,2);
    }
    fclose($fp);
    
    // новый файл pl1 маша
    
    $fl = "db/player".$player1.".nm";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name2);
    fclose($fp);
    
    // новый файл pl2 саша
    
    $fl = "db/player".$player2.".nm";
    $fp = fopen($fl,"w+");
    $fw = fwrite($fp,$name1);
    fclose($fp);
    
    // удаляю pl2_ саша
    unlink("db/player".$player2.".nm_");
    
    // появляются файлы pl1 маша и pl2 саша
    
    
    // ТЕПЕРЬ РАБОТА С РЕЗУЛЬТАТАМИ
    
    
    for ($i=1; $i<=$days; $i++){
    
    // считываю если есть резы pl1
    $fl = "db/p".$player1."d".$i.".mon";
    if (file_exists($fl)){
    
    $rez = "";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $rez .= fgets($fp,2);
    }
    fclose($fp);
    
    $fl = "db/p".$player2."d".$i.".mon_";
    $fp = fopen($fl, "w+");
    $fw = fwrite($fp, $rez);
    fclose($fp);
    
    }
    
    // считываю, если есть резы pl2
    $fl = "db/p".$player2."d".$i.".mon";
    if (file_exists($fl)){
    
    $rez = "";
    $fp = fopen($fl,"r");
    while(!feof($fp)){
    $rez .= fgets($fp,2);
    }
    fclose($fp);

    Вот, выдавил из себя говнокод, который меняет местами игроков в таблице. Имена записаны в файлы player1.nm, player2.nm и т.д.
    Результаты определенных дней записаны по такой структуре:
    1) Есть дата 1.07.2012, она записана в файл day2.day (вообщем, в файл с номером по порядку: day1.day, day2.day и т.д.)
    2) Если игрок player1.nm играл в день 2, на который установлена дата 1.07.2012, то к нему создается файл p1d2.mon, в который записывается его результат.
    3) Потом просто считываются каждый из файлов p[PLAYER]d[DAY].mon и создается таблица.
    Вот сам сайт: http://pokerstat.16mb.com/

    Запостил: EndoCrinolog, 06 Июля 2012

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

    • К сожалению, это только часть кода, так как не знаю, почему, но его обрезали.... А редактировать, я так понимаю, нельзя?
      Ответить
    • >http://pokerstat.16mb.com/
      У меня одного Хром закричал про фишинг?
      Ответить
      • фишинга нет, у меня ничего не кричит
        проверь
        Ответить
      • там статистика покера. мы сдруганами в покер играем и решили статистику вести
        Ответить
        • Не составляет большого труда повесить твой сайтег)
          Жди небольшую атаку в виде розовых пони!=)
          Ответить
        • что такое базы данных мы не знаем, да?
          Ответить
          • да знаете) просто не нашел решения проблемы в виде MySQL или XML, поэтому пришлось все данные хранить в файлах))
            Ответить
    • /db/ надо защищать от листинга, ёпта.
      Ответить
      • да сайт вообще ради статистики а не глаз)))
        просто неудобно было всё в блокнотике хранить)))
        Ответить
        • Худший сорт отмазок - ссылаться на убогость проекта. Уж лучше на свои собственные верхние (передние) конечности.
          Ответить
      • офигенная база данных...
        Ответить
    • вообщем, блеать!
      Ответить
    • вы саша или маша?
      Ответить
    • Кодировку-то выставить у странички совсем никак было?
      Ответить
      • Зачем? В менюхе браузера же можно выбрать.
        Ответить
        • Я угадаю эту кодировку с четырёх нотзакорючек
          Ответить
          • я так понимаю, что-то не так с кодировкой?..
            Ответить
            • Выстави в хедере Content-Type или в теге <meta http-equiv="Content-Type" ...> кодировку правильно, в линуксе только знаки вопроса отображаются.
              Ответить

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