"PHP" / Говнокод #4484 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  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
<?php 
// Генерируем картинку для капчи, цифры и латынские литеры
// PHP код:
function rnd_str($str_size=1){ 
        $str='';  
        $chars= array(  
            'a', 'b', 'c', 'd', 'e',  
            'f', 'g', 'h', 'i', 'j',  
            'k', 'l', 'm', 'n', 'o',  
            'p', 'q', 'r', 's', 't',  
            'u', 'v', 'w', 'x', 'y',  
            'z',  
              
            'A', 'B', 'C', 'D', 'E',  
            'F', 'G', 'H', 'I', 'J',  
            'K', 'L', 'M', 'N', 'O',  
            'P', 'Q', 'R', 'S', 'T',  
            'U', 'V', 'W', 'X', 'Y',  
            'Z'  
        );  
          
        for( $i=0; $i<$str_size; $i++ ){  
            $num= true;  
            if( rand(0,1) == 1 ) $num= false;  
            if($num) $str.= rand(0,9);  
            else $str.= $chars[rand(0,sizeof($chars)-1)];  
        }  
        return $str;  
    } 
?>
<?php 
// пример 
// PHP код:

echo rnd_str(); 
?>

...Внезапно наткнулось...

> Важная информация
> 27.03.2010 - Ура! Форуму OnlyWM - 1 месяц

Запостил: istem istem, (Updated )

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

  • Наклал... а теперь смотрю - не ГК, а фигня какая-то
    Ответить
    • Семь раз отмерь — один отрежь, %username%.

      Говно - достойное сего ресурса.
      только массив $chars чего стоит и пляски с $num.
      кстати почему не создан массив чисел?
      Ответить
    • Наличие в капче и строчных и прописных букв уже ГК. Посмотрел бы я на юзера, который будет расшифровывать прописная "I" (ай) там нарисована или строчная "l" (эл)!
      Ответить
      • Мне попадались такие капчи.
        Попадались капчи с русскими и английскими буквами вперемешку: хрен угадаешь, на каком там языке А О Т и пр.
        Ответить
  • латынские литеры - автор хотел показать себя с умной стороны и обосрался.
    Ответить
  • // PHP код: - а вот этот комментарий, скажите мне, на кого рассчитан?
    Ответить
      • От туда же:
        function scan_dir($dirname) 
        {
        GLOBAL $text, $retext;
        //...
        }
        
        $text = '$text'; // Искомая строка
        $retext = '$retext'; // Строка замены
        $dirname = "Имя корневой директории, например ."; 
        
        scan_dir($dirname);  // Вызов рекурсивной функции

        Вот как надо передавать параметры в функцию!
        Ответить
          • Если человек не умеет программировать, то php позволит гиперболизировать это неумение более, чем другой язык. В других, мы имеет минимум "Compile error"
            Ответить
            • перл позволяет это сделать куда лучше. в пхп использовать глобальные переменные даже менее удобно, так как нужно объявлять их в каждой функции.
              Ответить
              • в перле архитектура изначально модульная: работа с CGI там живет в модуле CGI (а не в глобальных переменных), работа с БД живет в DBI/DBD (и там нет функции mysql_query), в перле есть явные различия между массивами и хешами, в перле нету недоношенностей типа потугов на статическую типизацию и иже с ними.

                Все это делает программы на перле более структурированными.
                Ответить
                • Да ладно вам. Перл - помойка для тех, для кого написание кода - способ самовыражение через хитровыебаные конструкции понятные только автору. Перловики ведь прутся от этого - наш язык такой мощный, такой мощный, вах-вах! Угадайте с одного раза почему вместо нормально структурированной документации там до сих пор всякие perlretut, perlthrtut, perlothrtut и прочая поебень.

                  Сам написал немало на перл, но собираюсь перелазить на .нет - надоело говно.
                  Ответить
                  • документация есть и ввиде веб, и кстати в ней нет примеров говнокода, как в документации пхп.
                    только причем тут документация?

                    .net это платформа а не язык, бывает perl под .net.

                    у Вас каша какая-то
                    Ответить
                    • я веб документацию и имел в виду. а вы ее из консоли читаете?

                      про .net я как бы в курсе.
                      Ответить
                        • тем что читатель должен знать что такое perlretut, perlthrtut, perlothrtut.

                          вы не задумывались, почему к примеру справка в майкрософт не состоит из winfgrfbve, winfhtverwe, winfhlverwe и т.д.?
                          Ответить
                          • 1) читатель не должен ничего знать (я привел ссылки на обычную доку) просто с perlthrtut гуряку удобнее делать поиск в консоли.

                            2) у микрософт есть еще круче: Q242450
                            Ответить
  • Лично меня озадачило вывод капчи через "echo"
    Ответить
  • эта херь, это типо аналог str_shuffle + substr ?
    Ответить
  • массив chars, танцы c num. Да вот и всё.

    Хорошо, что он не подбирал буквы так:
    $rand = (0, 61);
    switch($rand) {
    ....
    case 10: $str .= 'a'; break;
    ....
    }
    Так что он верной идёт дорогой. Воздержусь от голосования.
    Ответить
  • > // Генерируем картинку для капчи
    эм, а где здесь картинка?
    Ответить

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

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8