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

    +166

    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
    /*
         * Language
         */
    
        $CONFIG['LANGUAGE'] = 'ru_ru';
    
        if (!preg_match('/en\./', $_SERVER['HTTP_HOST']))
        {
            $CONFIG['LANGUAGE'] = 'ru_ru';
        } else
        {
            $CONFIG['LANGUAGE'] = 'en';
        }
        $CONFIG['LANGUAGE'] = 'en';

    ещё тёпленькое. из-за "неизвестных" причин выбиралась не та локаль... видимо решили забить так, чтоб наверняка.

    POPSuL, 21 Марта 2011

    Комментарии (0)
  2. PHP / Говнокод #6048

    +146

    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
    <?php
    // Calculate the age from a given birth date
    // Example: GetAge("1986-06-18");
    function GetAge($Birthdate)
    {
            // Explode the date into meaningful variables
            list($BirthYear,$BirthMonth,$BirthDay) = explode("-", $Birthdate);
            // Find the differences
            $YearDiff = date("Y") - $BirthYear;
            $MonthDiff = date("m") - $BirthMonth;
            $DayDiff = date("d") - $BirthDay;
            // If the birthday has not occured this year
            if ($DayDiff < 0 || $MonthDiff < 0)
              $YearDiff--;
            return $YearDiff;
    }
    ?>

    добыто в интернете.
    Опять пхп и опять даты. Похоже, это вечное...

    Lure Of Chaos, 20 Марта 2011

    Комментарии (4)
  3. PHP / Говнокод #6046

    +160

    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
    ##### grab the full name of the agent
    		$stmt="SELECT full_name,user_level,hotkeys_active,agent_choose_ingroups,scheduled_callbacks,agentonly_callbacks,agentcall_manual,vicidial_recording,vicidial_transfers,closer_default_blended,user_group,vicidial_recording_override,alter_custphone_override,alert_enabled,agent_shift_enforcement_override,shift_override_flag,allow_alerts,closer_campaigns,agent_choose_territories,custom_one,custom_two,custom_three,custom_four,custom_five from vicidial_users where user='$VD_login' and pass='$VD_pass'";
    		$rslt=mysql_query($stmt, $link);
    			if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'01007',$VD_login,$server_ip,$session_name,$one_mysql_log);}
    		$row=mysql_fetch_row($rslt);
    		$LOGfullname =							$row[0];
    		$user_level =							$row[1];
    		$VU_hotkeys_active =					$row[2];
    		$VU_agent_choose_ingroups =				$row[3];
    		$VU_scheduled_callbacks =				$row[4];
    		$agentonly_callbacks =					$row[5];
    		$agentcall_manual =						$row[6];
    		$VU_vicidial_recording =				$row[7];
    		$VU_vicidial_transfers =				$row[8];
    		$VU_closer_default_blended =			$row[9];
    		$VU_user_group =						$row[10];
    		$VU_vicidial_recording_override =		$row[11];
    		$VU_alter_custphone_override =			$row[12];
    		$VU_alert_enabled =						$row[13];
    		$VU_agent_shift_enforcement_override =	$row[14];
    		$VU_shift_override_flag =				$row[15];
    		$VU_allow_alerts =						$row[16];
    		$VU_closer_campaigns =					$row[17];
    		$VU_agent_choose_territories =			$row[18];
    		$VU_custom_one =						$row[19];
    		$VU_custom_two =						$row[20];
    		$VU_custom_three =						$row[21];
    		$VU_custom_four =						$row[22];
    		$VU_custom_five =						$row[23];
    
    		if ( ($VU_alert_enabled > 0) and ($VU_allow_alerts > 0) ) {$VU_alert_enabled = 'ON';}
    		else {$VU_alert_enabled = 'OFF';}
    		$AgentAlert_allowed = $VU_allow_alerts;
    
    		### Gather timeclock and shift enforcement restriction settings
    		$stmt="SELECT forced_timeclock_login,shift_enforcement,group_shifts,agent_status_viewable_groups,agent_status_view_time from vicidial_user_groups where user_group='$VU_user_group';";
    		$rslt=mysql_query($stmt, $link);
    			if ($mel > 0) {mysql_error_logging($NOW_TIME,$link,$mel,$stmt,'01052',$VD_login,$server_ip,$session_name,$one_mysql_log);}
    		$row=mysql_fetch_row($rslt);
    		$forced_timeclock_login =	$row[0];
    		$shift_enforcement =		$row[1];
    		$LOGgroup_shiftsSQL = eregi_replace('  ','',$row[2]);
    		$LOGgroup_shiftsSQL = eregi_replace(' ',"','",$LOGgroup_shiftsSQL);
    		$LOGgroup_shiftsSQL = "shift_id IN('$LOGgroup_shiftsSQL')";
    		$agent_status_viewable_groups = $row[3];
    		$agent_status_viewable_groupsSQL = eregi_replace('  ','',$agent_status_viewable_groups);
    		$agent_status_viewable_groupsSQL = eregi_replace(' ',"','",$agent_status_viewable_groupsSQL);
    		$agent_status_viewable_groupsSQL = "user_group IN('$agent_status_viewable_groupsSQL')";
    		$agent_status_view = 0;
    		if (strlen($agent_status_viewable_groups) > 2)
    			{$agent_status_view = 1;}
    		$agent_status_view_time=0;
    		if ($row[4] == 'Y')
    			{$agent_status_view_time=1;}

    Оказывается, у меня на работе стоит чуть переделанный VICIdial.
    Это звездец.

    7ion, 20 Марта 2011

    Комментарии (11)
  4. PHP / Говнокод #6043

    +148

    1. 1
    preg_replace('/^(.*)\s(.*)$/i', '$1', $item['updated']);

    DrFreez, 20 Марта 2011

    Комментарии (8)
  5. PHP / Говнокод #6034

    +156

    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
    if (!isset($_SERVER['PHP_AUTH_USER']))
     
    {
            Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
            Header ("HTTP/1.0 401 Unauthorized");
            exit();
    }
     
    else {
            if (!get_magic_quotes_gpc()) {
                    $_SERVER['PHP_AUTH_USER'] = mysql_escape_string($_SERVER['PHP_AUTH_USER']);
                    $_SERVER['PHP_AUTH_PW'] = mysql_escape_string($_SERVER['PHP_AUTH_PW']);
            }
     
            $query = "SELECT pass FROM userlist WHERE user='".$_SERVER['PHP_AUTH_USER']."'";
            $lst = @mysql_query($query);
     
            if (!$lst)
            {
                Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
            Header ("HTTP/1.0 401 Unauthorized");
            exit();
            }
     
            if (mysql_num_rows($lst) == 0)
            {
               Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
               Header ("HTTP/1.0 401 Unauthorized");
               exit();
            }
     
            $pass =  @mysql_fetch_array($lst);
            if ($_SERVER['PHP_AUTH_PW']!= $pass['pass'])
            {
                Header ("WWW-Authenticate: Basic realm=\"Admin Page\"");
               Header ("HTTP/1.0 401 Unauthorized");
               exit();
            }
     
     
    }

    Авторизация

    nepster, 20 Марта 2011

    Комментарии (3)
  6. PHP / Говнокод #6033

    −101

    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
    вопрос:
    есть массив $friends[id1] и friends2[id2] можно ли их объединить?
    
    ответ:
    $friends[id1] .= $friends2[id2];//(точка перед равно)
    
    Помогло?
    
    если ключи есть совпадающие
    foreach($friends2[id2] as $key=>$item)
    {
        $friends[id1][$key.'_2']=$item;
    }
    
    
    ну или с проверкой
    foreach($friends2[id2] as $key=>$item)
    {
        if(isset($friends[id1][$key]))// проверка на существование ключа
        {
            $friends[id1][$key.'_2']=$item;
        }
        else
        {
            $friends[id1][$key]=$item;
        }
    }
    
    
    можно усложнить
    foreach($friends2[id2] as $key=>$item)
    {
        if(isset($friends[id1][$key]) && $friends[id1][$key]!==$item)// проверка на существование ключа и совпадение с существующим значением ключа первого массива
        {
                $friends[id1][$key.'_2']=$item;
        }
        else
        {
            $friends[id1][$key]=$item;
        }
    }
    вот

    мой говнокод))

    Snickers, 20 Марта 2011

    Комментарии (4)
  7. PHP / Говнокод #6030

    +179

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function redirect_page($script_name)
    {
    	$location = $script_name;
    	?><script>document.location.href="<? echo $location; ?>";</script><?
    }

    Я нашел это говно в наш код!

    wyand, 19 Марта 2011

    Комментарии (6)
  8. PHP / Говнокод #6029

    +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
    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
    <? 
    // Страница авторизации 
      
    # Функция для генерации случайной строки 
    function generateCode($length=6) { 
        $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI JKLMNOPRQSTUVWXYZ0123456789"; 
        $code = ""; 
        $clen = strlen($chars) - 1;   
        while (strlen($code) < $length) { 
                $code .= $chars[mt_rand(0,$clen)];   
        } 
        return $code; 
    } 
    
    # Соединямся с БД 
    mysql_connect("localhost", "loper", "l1i2z3a4"); 
    mysql_select_db("lingerie"); 
     
    if(isset($_POST['submit'])) 
    { 
        # Вытаскиваем из БД запись, у которой логин равняеться введенному 
        $query = mysql_query("SELECT user_id, user_password FROM users WHERE user_login='".mysql_real_escape_string($_POST['login'])."' LIMIT 1"); 
        $data = mysql_fetch_assoc($query); 
         
        # Соавниваем пароли 
        if($data['user_password'] === md5(md5($_POST['password']))) 
        { 
            # Генерируем случайное число и шифруем его 
            $hash = md5(generateCode(10)); 
                 
            if(!@$_POST['not_attach_ip']) 
            { 
                # Если пользователя выбрал привязку к IP 
                # Переводим IP в строку 
                $insip = ", user_ip=INET_ATON('".$_SERVER['REMOTE_ADDR']."')"; 
            } 
             
            # Записываем в БД новый хеш авторизации и IP 
            mysql_query("UPDATE users SET user_hash='".$hash."' ".$insip." WHERE user_id='".$data['user_id']."'"); 
             
            # Ставим куки 
            setcookie("id", $data['user_id'], time()+60*60*24*30); 
            setcookie("hash", $hash, time()+60*60*24*30); 
             
            # Переадресовываем браузер на страницу проверки нашего скрипта 
            header("Location: check.php"); exit(); 
        } 
        else 
        { 
            print "Вы ввели неправильный логин/пароль"; 
        } 
    }

    qbasic, 19 Марта 2011

    Комментарии (7)
  9. PHP / Говнокод #6028

    +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
    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
    <?php
    /* Подключаемые файлы */
    require_once('data/config.test.php');
     
    /**
    * Сохранение настроек модуля
    */
    if ($action == "dosave") {
        $find[]     = "'\r'";
        $replace[]  = "";
        $find[]     = "'\n'";
        $replace[]  = "";
     
    if ($member_db[1] != 1) {
        msg ("error", $lang['opt_denied'], $lang['opt_denied']);
    }
    $handler = @fopen('data/config.test.php', "wb");
    fwrite ($handler, "<?php \n\n//Test configurations
                             \n\n\$config_test = array(
                             \n\n'version' => \"v.1.0\",\n\n");
     
    foreach ($save_con as $name => $value) {    
        $value = trim(stripslashes ($value));
        $value = htmlspecialchars  ($value, ENT_QUOTES);
        $value = preg_replace($find, $replace, $value);
        fwrite($handler, "'{$name}' => \"{$value}\",\n\n");
    }
        
    fwrite($handler, ");\n\n?>");
    fclose($handler);
     
    msg ("info", "Строка изменена",
         "{$lang['opt_sysok_1']}<br /><br />
          <a href=\"{$PHP_SELF}?mod=test_adm\">{$lang['db_prev']}</a>");
    }
    echo"Шапка";
    echo<<<HTML
    <form action="" method="POST">
    <table width="100%">
      <tr>
        <td class="option" style="padding:4px;">
          <b> Текст выводимой строки: </b><br />
          <span class="small"> например: Hello world </span>
        <td align="middle" width="400">
          <input class="edit" style="text-align:center" size="40" value="{$config_test['text']}" name="save_con[text]"></td>
      </tr>
      
      <tr>
        <td class="option" style="padding:4px;">
           <b> Комментарий к тексту: </b><br />
           <span class="small"> например: Это ваш первый пример модуля с админпанелью </span>
        <td align="middle" width="400">
           <input class="edit" style="text-align:center" size="40" value="{$config_test['detail']}" name="save_con[detail]"></td>
      </tr>
    
      <tr>
        <td class="option" style="padding-bottom:10px; padding-top:10px; padding-left:10px;" colspan="2">
          <input class="buttons" type="hidden" name="action" value="dosave" />
          <input class="buttons" type="submit" name="do" value=" Сохранить " /></td>
      </tr>
      
    </table>
    </form>
    HTML;
    echo"Подвал";
    ?>

    qbasic, 19 Марта 2011

    Комментарии (4)
  10. PHP / Говнокод #6017

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    /*
     * Корректировка даты.
     *	если дата в будущем - то показываем сегодня.
     */
    
    $row['created'] = ( strtotime( date("Y-m-d", strtotime($row['created'])) ) > strtotime( date("Y-m-d") ) )? 
    		date("r")
    		: date("r", strtotime($row['created']));

    4x4 off-road racing...

    istem, 17 Марта 2011

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