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

    +159

    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
    //1 скрипт
    $x = rand (1,3);
    if ($x==1)
    {
    echo "Выберите круг<br>";
    $n='krug';
    }
    elseif ($x==2)
    {
    echo "Выберите квадрат<br>";
    $n='Kvadr';
    }
    elseif ($x==3)
    {
    echo "Выберите треугольник<br>";
    $n='Treug';
    }
    echo '<img src="1.jpg">';
    echo '<input type=radio name="captcha" value="krug"><br>';
    echo '<img src="2.jpg">';
    echo '<input type=radio name="captcha" value="Kvadr"><br>';
    echo '<img src="3.jpg">';
    echo '<input type=radio name="captcha" value="Treug"><br>';
    
    $captcha = fopen("captcha.txt", "w+");
    $key = $n;
    fwrite($captcha,$key);
    fclose($captcha);
    ?>
    
    //2 скрипт 
    $file = file_get_contents('./captcha.txt', false);
    if ($_REQUEST["captcha"] == $file)
    {

    Недавно наговнокодил.Эдакая реализация каптчи без sql.

    Запостил: Cadmium, 13 Февраля 2012

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

    • >$n='krug';
      >$n='Kvadr';
      >$n='Treug';
      Убейте себя хотя бы за это.
      Ответить
      • показать все, что скрытоЛучше уж ты себя.Я открыто признал, что набыдлокодил.Оскорбления тут неуместны.
        Ответить
        • дело отнюдь не в быдлокоде (это подразумеваетсо), а в том, что кое-кто у нас полуграмотный мудила, не освоивший английский. так-то.
          Ответить
          • англиский нужно знать
            Ответить
          • показать все, что скрытоЭто ты будешь лингвисту по образованию говорить?
            Писалось в спешке.Отсюда косяки типа 26 строки, к примеру.Уже давно, собственно, переделано.
            Ответить
            • А то что вы быдлокодер в развитой форме это кому говорить: вам или вашему работодателю?
              Ответить
            • А лингвисту тем более непростительно писать быдлотранслитом.
              И это, в чем вообще смысл этой капчи?
              <<$x = rand (1,3);
              Ответить
            • безграмотному лингвисту? ну ты крут
              есличо, я лидер митолл группы, дальше по тексту
              Ответить
    • Отходя от общей картины, зачем 26 строчка? В ней хитрый план скрыт? Или это фетиш такой....
      Ответить
    • > без sql
      а теперь представим, что на сайт кроме автора по недоразумению заблудился кто-то... одновременно...

      я уже молчу про отношение степени спамоустойчивоти к степени мозгоебства гипотетическому посетителю
      Ответить
    • Видимо, сайт был расчитан только на одного пользователя.
      Ответить
    • Ещё бы понять, ЗАЧЕМ каптче sql. Тут кривость на уровне идеи.
      Ответить
      • Имеет смысл только для сессий, хранящихся в базе. В php вроде в файлах по дефолту хранятся, можно просто в сессию и в куки класть UUID капчи. Замаха на распределённость и отказоустойчивость тут всё равно нет.
        А взломать эту капчу сможет даже ребёнок
        Ответить
        • Тут и ломать не нужно..
          Запустил скрипт который долбит форму с одним вариантом капчи, и данные с 0.33 вероятностью проходят валидацию)
          Ответить
        • Ну так про то и сказ. Хранить можно в сессиях, они для того немного и предназначены. Хранить в файле - криво и глупо, поскольку с сессией всю работу на себя возьмёт система.
          Ответить
          • Капчу нужно отправлять через главпочтамт
            Ответить
            • Это для регистрации в госуслугах такое надо.
              Ответить
    • Я выбираю треух
      Ответить

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