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

    +165

    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
    <?php
            function Test()
            {
                    if (isset($this->session->login) && isset($this->session->password)) {
                            if ($this->session->ip != $_SERVER["REMOTE_ADDR"]) {
                                    $this->db->Query("INSERT INTO `hackers`
                                 SET `ip` = '%s', `get` = '%s'", $_SERVER['REMOTE_ADDR'], $_SERVER["REQUEST_METHOD"]." | ".$_SERVER["REQUEST_URI"]);
                                    exit("Critical error! Stopping...");
                            } else {
                                    $this->db->Query("SELECT *
                                            FROM `users`
                                            WHERE `login` = '%s' AND password = '%s' LIMIT 1", $this->session->login, $this->session->password);
                                    if ($this->db->Num()) {
                                            return $this->db->Fetch();
                                    } else {
                                            return false;
                                    }
                            }
                    } else {
                            return false;
                    }
            }

    qbasic, 23 Февраля 2011

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

    +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
    //старт сессии
    function Sessions_Start () {
            global $SecureKey, $SecureCookieName, $NumIPRanks, $AuthSalt;
     
        $LifeTime = 0; 
        $Path = '/';
        $Domain = '';
        $Secure = FALSE;
        $HttpOnly = TRUE;
        session_set_cookie_params($LifeTime, $Path, $Domain, $Secure, $HttpOnly);
            
            session_start ();
            
            if (!isset ($_SESSION['UserData'])) {
                    $_SESSION['UserData'] = array ();
                    $_SESSION['UserData']['UserType'] = 'guest';    
            }
            else{
                    $Type = $_SESSION['UserData']['UserType'];
                    $SessionValidator = 0;
                    
                    if ($Type == 'member') {
                            if (!isset ($_SESSION['UserData']['UserID']) or !isset ($_SESSION['UserData']['UserName']) or!isset ($_SESSION['UserData']['GroupID']) or!isset ($_SESSION['UserData'][$SecureKey]) or!isset ($_SESSION['UserData'][$SecureCookieName])) {
                                    $SessionValidator++;
                            }
                            
                            if (!isset ($_COOKIE[$SecureCookieName])) {
                                    $SessionValidator++;
                            }                       
                            
                            //секретная строка
                            $IPArray = explode ('.', $_SERVER['REMOTE_ADDR']);
                            $IPRanks = array ();
                            for ($i=0; $i < $NumIPRanks; $i++) {
                                    $IPRanks[] = $IPArray[$i];
                            }
                            $IPFinalString = sha1 (implode ('.', $IPRanks) . $AuthSalt);
                            $CurUserAgent = sha1 (substr ($_SERVER['HTTP_USER_AGENT'], 0, 50) . $AuthSalt);
                            $SecureString = sha1 ($IPFinalString . $CurUserAgent . $AuthSalt);
                            
                            if ($_SESSION['UserData'][$SecureKey] <> $SecureString) {
                                    $SessionValidator++;
                            }
                            
                            if ($_SESSION['UserData'][$SecureCookieName] <> $_COOKIE[$SecureCookieName]) {
                                    $SessionValidator++;
                            }
                            
                            if ($SessionValidator > 0) {
                                    session_regenerate_id ();
                                    $_SESSION['UserData'] = array ();
                                    $_SESSION['UserData']['UserType'] = 'guest';
                            }
                            
                    }
            }       
            return (session_id ());
    }

    qbasic, 23 Февраля 2011

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

    +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
    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
    if (isset ($_POST['SendAuthForm'])) {   
    	//массив ошибок
    	$AuthError = array ();
    	
    	if (!isset ($_POST['AuthLogin']) || $_POST['AuthLogin'] == '' || !isset ($_POST['AuthPass']) || $_POST['AuthPass'] == '') {
    		$AuthError[] = $ForumLang['AuthErrors']['WrongLoginPass'];
    	}
    	else {
    		$AuthLogin = trim ($_POST['AuthLogin']);
    		$AuthPass  = trim ($_POST['AuthPass']);
    		$CheckUserValid = 0;	    
    		//проверка логина-пароля
    		$SQLCheckAuth = 'SELECT UserID, UserPassword, UserMail, GroupID
    						 FROM users
    						 WHERE UserLogin = \'' . Defence_EscapeString ($DBType, $AuthLogin) . '\'';
    		$CheckAuthQuery = DB_Query ($DBType, $SQLCheckAuth, $ForumConnection);
    		if (!$CheckAuthQuery) {		 
    			exit ('Error while checking auth data!');
    		}
    		$UserExists = DB_NumRows ($DBType, $CheckAuthQuery);
    		if ($UserExists == 0) {
    			$CheckUserValid++;		      
    		}	       
    		//массив		
    		$UserRow = DB_FetchAssoc ($DBType, $CheckAuthQuery);
    	 //данные		
    		$UserPass = $UserRow['UserPassword'];
    		$UserID   = intval ($UserRow['UserID']);
    		$UserMail = $UserRow['UserMail'];
    		$GroupID  = intval ($UserRow['GroupID']);
    		if (Main_Crypt ($AuthPass) <> $UserPass) {
    			$CheckUserValid++;
    		}
    		if ($CheckUserValid > 0) {
    			$AuthError[] = $ForumLang['AuthErrors']['WrongLoginPass'];
    		}
    		else {
    			//удаление из гостей
    			$SQLDelFromGuests = 'DELETE FROM guest_activity
    								 WHERE SessionID=\'' . $SessionID . '\'';
    			$DelFromGuestsQuery = DB_Query ($DBType, $SQLDelFromGuests, $ForumConnection);
    			if (!$DelFromGuestsQuery) {		     
    				exit ('Error while deleting user from guest table!');
    			}		       
    			//редактирование таблицы пользователя
    			$CurAction = 'main_page';
    			$SQLUpdateUser = 'UPDATE user_activity
    					  SET UserLastLogin=\'' . $Now . '\', UserLastAction=\'' . $CurAction . '\', UserIsOnline=\'yes\'
    							  WHERE UserID=\'' . $UserID . '\'';
    			$UpdateUserQuery = DB_Query ($DBType, $SQLUpdateUser, $ForumConnection);
    			if (!$UpdateUserQuery) {			
    				exit ('Error while updating user status onto \'yes\'!');
    			}
    			//регенерация ид сессии		 
    			session_regenerate_id (TRUE);
    			$SecureString = '';		     
    			//ip пользователя
    			$CurUserIP = $_SERVER['REMOTE_ADDR'];
    			$IPArray = explode ('.', $CurUserIP);
    			$IPRanks = array ();
    			for ($i=0; $i < $NumIPRanks; $i++) {
    				$IPRanks[] = $IPArray[$i];
    			}
    			$IPFinalString = implode ('.', $IPRanks);
    			$IPFinalString = sha1 ($IPFinalString . $AuthSalt);
    			//user-agent
    			$CurUserAgent = $_SERVER['HTTP_USER_AGENT']; 
    			$CurUserAgent = substr ($CurUserAgent, 0, 50); 
    			$CurUserAgent = sha1 ($CurUserAgent . $AuthSalt); 
    			//объединение
    			$SecureString = sha1 ($IPFinalString . $CurUserAgent . $AuthSalt);
    			//случайная строка - хеш
    			$RandomString = Main_GenerateRandString (10, '1');
    			$RandomString = sha1 ($RandomString . $AuthSalt . time ());
    		//данные в сессию
    			unset ($_SESSION['UserData']);
    			$_SESSION['UserData'] = array ();
    			$_SESSION['UserData']['UserType'] = 'member';
    			$_SESSION['UserData']['UserID']   = $UserID;
    			$_SESSION['UserData']['UserName'] = $AuthLogin;
    			$_SESSION['UserData']['GroupID']  = $GroupID;
    			$_SESSION['UserData'][$SecureKey] = $SecureString;
    			$_SESSION['UserData'][$SecureCookieName] = $RandomString;
    			//куки
    			setcookie($SecureCookieName,$RandomString);
    			//перенаправление
    			$_SESSION['Message'] = 'auth_sucess';
    			$URL = '?action=message';
    			Header('Location:' . $SelfName . $URL);
    			exit ();
    		}
    	}       
    	//проверка
    }

    qbasic, 23 Февраля 2011

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

    +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
    <?php
    $result=mysql_query($query);
    while($r=mysql_fetch_array($result))
    {
    
    echo "$r[groupe]<br/>";
    
    $gr1_c1=$r[0]['groupe'];
    $gr2_c1=$r[1]['groupe'];
    $gr3_c1=$r[2]['groupe'];
    $gr4_c1=$r[3]['groupe'];
    $gr5_c1=$r[4]['groupe'];
    $gr6_c1=$r[5]['groupe'];
    $gr7_c1=$r[6]['groupe'];
    
    ?>
    
    
    <table width="1027" cellspacing="0" cellpadding="0" border="1" align="center" valign="center">
    <tr>
    <td width="85"><div align="center"><? echo $gr1_c1 ?> </div></td>
    <td width="85"><div align="center"><? echo $gr2_c1 ?> </div></td>
    <td width="85"><div align="center"><? echo $gr3_c1 ?></div></td>
    <td width="85"><div align="center"><? echo $gr4_c1 ?></div></td>
    <td width="85"><div align="center"><? echo $gr5_c1 ?></div></td>
    <td width="85"><div align="center"><? echo $gr6_c1 ?></div></td>
    <td width="85"><div align="center"><? echo $gr7_c1 ?></div></td>
    </tr>
    </table>

    qbasic, 23 Февраля 2011

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

    +163

    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
    $year = date("Y");
    $month = date("m");
    $day = date("d"); 
    
    if ($month == 9 or $month == 10 or $month == 11)
    {
    $month_new = $month + 1;
    echo $year.'-'.$month_new.'-'.$day;  
    }
    else 
    {
    
    if ($month == 12) {$year_new = $year + 1; 
    $year_new = $year + 1;
    $month_new = 1; 
    echo $year_new.'-0'.$month_new.'-'.$day;  }
    else {
    $month_new = $month + 1;
    echo $year.'-0'.$month_new.'-'.$day;} 
    }

    не удержался )

    Sulik78, 22 Февраля 2011

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

    +163

    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
    <?$APPLICATION->IncludeFile('/inc/mail.php')?> <?$err=-1;?> <?if($_REQUEST['act']=="add" && $_REQUEST['text'] && $_REQUEST['phone'] && $_REQUEST['captcha'] && !isset($_REQUEST['from'])):?> <?$err=0;?> <?if($_SESSION['pass']!=$_REQUEST['captcha']):?>
    <div class="red"><b>Неверно введен код подтверждения!</b></div>
    <?$err=1;?> <?else:?> <?
    $el = new CIBlockElement;
    
    if($new_id = $el->Add($arLoadProductArray))
    {
    $sect2 = GetIBlockSection($_REQUEST['podr_'.$_REQUEST['rubrika']]);
    $sect1 = GetIBlockSection($_REQUEST['rubrika']);
    echo "Ваше объявление успешно принято и будет рассмотрено модератором";
    $domen = "http://www.auto-city.ru/";
    $mail_body = 'Добавлено новое объявление "'.$_REQUEST['text'].'" в рубрике "'.$sect1['NAME'].'"->"'.$sect2['NAME'].'" и ожидает модерации: <a href="'.$domen.'bitrix/admin/iblock_element_edit.php?ID='.$new_id.'&type=obyav&IBLOCK_ID=47">'.$domen.'bitrix/admin/iblock_element_edit.php?ID='.$new_id.'&type=obyav&IBLOCK_ID=47</a>';
    email('[email protected]', '[email protected]', 'Робот АвтоCity', 'Новое объявление на сайте', $mail_body);
    }
    else
    echo "Возникла ошибка при добавлении, обратитесь к слежбе поддержки";
    ?> <?endif?> <?elseif($_REQUEST['act']=="add"):?> <?if(!$_REQUEST['from']):?>
    <div class="red"><b>Заполните все поля!</b></div>
    <?else:?> <b>Пожалуйста, укажите подрубрику и введите код подтверждения</b> <?endif?> <?$err=1;?> <?endif?> <?if($err || $err==-1):?>
    <script language="JavaScript">
    lastKey = 0;
    function ch_r(obj)
    {
    document.getElementById('r_'+obj.value).style.display = 'block';
    document.getElementById('r_'+lastrid).style.display = 'none';
    lastrid = obj.value;
    }
    
    function checkForm(obj)
    {
    var str = obj.phone.value;
    var re = /[^\d ()-+]+/;
    for(i=0;i<1000;i++)
    obj.phone.value = obj.phone.value.replace(re, "");
    if(obj.phone.value!=str){
    alert('В поле "Номер телефона" необходимо вводить только цифры!');
    return false;
    
    }
    if(!obj.text.value || !obj.captcha.value || !obj.phone.value)
    {
    alert('Заполните все поля!');
    return false;
    }
    }
    /*
    function checkChar2(){
    var re = /[^\d ()-+]+/;
    for(i=0;i<1000;i++)
    obj.phone.value = obj.phone.value.replace(re, "");
    }
    function checkChar()
    {
    key = event.keyCode;
    if(key<48 || key>57)
    
    // || key==109 || key==46 || key==16 || key==8 || key==32 || key==37 || key==39 || key==36 || key==35 || (key==57 || key==48 || key==107 || key==36 || key==35 || key==37 || key==39 || key==51 || key==56))
    {
    alert(key);
    lastKey = key;
    return false;
    }
    lastKey = key;
    return true;
    }*/
    </script>
    <form name="iblock_add" method="post" onsubmit="return checkForm(this)">
    <table class="tabs" style="width: 100%; border-collapse: collapse;" id="give_obyav">
    <tbody>
    <tr> <td> Текст объявления: </td> <td style="width: 250px;"> <textarea maxlength="200" size="20" rows="5" cols="25" name="text" style="width: 100%;">&lt;img src=&quot;/bitrix/images/fileman/htmledit2/php.gif&quot; __bxsrc=&quot;/bitrix/images/fileman/htmledit2/php.gif&quot; border=&quot;0&quot; __bxtagname=&quot;php&quot; __bxcontainer=&quot;{'code': '&lt;?=$_REQUEST[\'text\']?&gt;'}&quot; /&gt;</textarea> </td> </tr>
    
    <tr> <td> Рубрика: </td> <td> <?$l1 = GetIBlockSectionList(47,0,Array("SORT"=>"ASC"))?> <select name="rubrika" onchange="ch_r(this);" style="width: 100%;"> </select> </td> </tr>

    qbasic, 22 Февраля 2011

    Комментарии (14)
  7. JavaScript / Говнокод #5772

    +168

    1. 1
    2. 2
    3. 3
    4. 4
    if(videoID == undefined || typeof videoID == 'undefined' || !videoID){
    	alert("Invalid video!");
    	return false;
    }

    Боги, спасите мою душу от этого проекта

    Shock, 22 Февраля 2011

    Комментарии (7)
  8. JavaScript / Говнокод #5771

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function shake(dom, power, count, duration) {
        dom.stop();
        for (var i = 0; i < count; i++) {
            dom.animate({'margin-left': ((i%2 == 0) ? '+' : '-') + '=' + ((i == 0 || i == count-1) ? power/2 : power)}, duration);
        }
    }

    Оптимизация рулит :)

    serj_alekseev, 22 Февраля 2011

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

    +159

    1. 1
    $this->last_error = $success;

    кстати о названиях переменных :))

    youROCK, 22 Февраля 2011

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

    +160

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?php
    $countH =1;
    $T = 0;
    foreach ($aSelectedUnits as $v) {
      if ($T != $v['UnitType']) {
        $countH = 1;
      }
      $countHired[$v['UnitNameId']] = $countH ++; // calculate hired units by type
      $T = $v['UnitNameId'];
    }
    ?>

    всего навсего нужно было подсчитать количество юнитов каждого типа.
    Как ни странно этот кусок кода считает юнытов, но не всегда верно.

    Sergunik, 22 Февраля 2011

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