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

    +163

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function get_date($timestamp){
    	return strftime("%Y", $timestamp)."-".strftime("%m", $timestamp)."-".strftime("%d", $timestamp);
    }
    $Time = time();
    $Time2 = $Time - 604800;
    $Date2 = get_date($Time2);

    Чудесным образом получаем дату%)
    Писал программист с опытом 12 лет.

    warider, 04 Ноября 2010

    Комментарии (14)
  2. Си / Говнокод #4530

    +106

    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
    // процедура ввода новой даты в RTC
    long __new_date()
    	{
    	date sysdate;
    	unsigned long str,i;
    	unsigned char tmpbuf[16];
    
    // ...
    
    nextda:	__putsV("\n\rВведите новую дату: ");
    	__getsV(tmpbuf,10); 
    	if(tmpbuf[0]==0) goto daok;
    	//проверка строки на допустимые символы '0'-'9' и '.'
    	for(i=0; tmpbuf[i]!=0; i++)
    	 { if((tmpbuf[i]>0x39 || tmpbuf[i]<0x30) && tmpbuf[i]!=0x2e) goto baddat;
    	 }
    	//проверка числа в диапазоне 01-31
    	if(((tmpbuf[0]==0x33)&&(tmpbuf[1]>0x31)) || (tmpbuf[0]>0x33) 
    		|| (tmpbuf[1]==0x2e) || ((tmpbuf[0]==0x30)&&(tmpbuf[1]==0x30)) ) goto baddat;
    	//проверка точки после числа
    	if((tmpbuf[2]!=0x2e) && (tmpbuf[2]!=0x0)) goto baddat; 
    	if((tmpbuf[2]==0x0) || (tmpbuf[3]==0x00)) 
    		{ sysdate.ti_date=(tmpbuf[1]-0x30)+((tmpbuf[0]-0x30)<<4);
    		  goto fordok; }
    	//проверка месяца в диапазоне 01-12
    	if(((tmpbuf[3]==0x31)&&(tmpbuf[4]>0x32)) || (tmpbuf[3]>0x31) 
    		|| (tmpbuf[4]==0x2e) || ((tmpbuf[3]==0x30)&&(tmpbuf[4]==0x30)) ) goto baddat;
    	//проверка точки после месяца
    	if((tmpbuf[5]!=0x2e) && (tmpbuf[5]!=0x0)) goto baddat; 
    	if((tmpbuf[5]==0x0) || (tmpbuf[6]==0x00)) 
    		{ sysdate.ti_date=(tmpbuf[1]-0x30)+((tmpbuf[0]-0x30)<<4);
    		  sysdate.ti_month=(tmpbuf[4]-0x30)+((tmpbuf[3]-0x30)<<4); 
    		  goto fordok; }
    	//проверка года в диапазоне 00-99
    	if((tmpbuf[6]==0x2e) || (tmpbuf[7]==0x2e)) goto baddat;
    	if(tmpbuf[7]==0x00) goto baddat; 
    	if(tmpbuf[8]==0x0)  
    		{ sysdate.ti_date=(tmpbuf[1]-0x30)+((tmpbuf[0]-0x30)<<4);
    		  sysdate.ti_month=(tmpbuf[4]-0x30)+((tmpbuf[3]-0x30)<<4); 
    		  sysdate.ti_year=(tmpbuf[7]-0x30)+((tmpbuf[6]-0x30)<<4); 
    		  goto fordok; }
    baddat:	__putsV("\n\rДата введена неверно (дд.мм.гг)");
    	goto nextda;
    	//установка новой даты
    fordok: 
    	__set_date(&sysdate);
    daok: 
       return 0;
    	}

    Из ПО отечественного шифродевайса. Функция получает от "оператора" время (дд.мм.гг), проверяет его на корректность и пишет в Real Time Clock.

    greyspy, 03 Ноября 2010

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

    +169

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <?php
    
            if($key === false){
                return false;
            }else{
                return $key;
            }

    user654321, 03 Ноября 2010

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

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    ...
    $query = "INSERT INTO `test`.`users` (`id` ,`email` ,`password` ,`nick` ,`sex` ,`date_birth` ,`about`) VALUES(NULL,'$email','$password','$nick','$sex','$dataBirth','$about')";
    $db->query($query);
    
    $query = "SELECT `id` FROM `users` WHERE `email` = '$email' AND `password` = '$password'";
    $result = $db->select($query);
    ...

    теперь так определяется ключ, вставленный автоинкрементом

    rtfm, 03 Ноября 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    public function save()
        {
            $query = "SELECT * FROM `users` WHERE `id` = '$this->userId'";
            $result = $this->db->select($query);
            if (!empty($result)) {
                $query = "UPDATE `users` SET `email` = '$this->email', `password` = '$this->pass', `name` = '$this->name', `age` = '$this->age', `date_birth` = '$this->dateBirth', `sex` = '$this->sex', `aboute` = '$this->about' WHERE `id` = '$this->userId'";
            } else {
                $query = "INSERT INTO `users` VALUES('$this->userId','$this->email','$this->pass','$this->name','$this->age','$this->dateBirth','$this->sex','$this->about')";
            }
            $this->db->query($query);
        }

    rtfm, 03 Ноября 2010

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    function checkmail($mail) 
        {
            $mail = trim($mail);
            if ((strlen($mail) == 0) OR (!preg_match('/^[a-z0-9_-]{1,20}+(\.){0,2}+([a-z0-9_-]){0,5}@(([a-z0-9-]+\.)+(com|net|org|mil|edu|gov|arpa|info|biz|inc|name|[a-z]{2})|[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3})$/is', $mail))) {
                return false;
            } 
            return true;
        }

    валидация e-mail

    rtfm, 03 Ноября 2010

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

    +154

    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
    function IndexLoadRelative($nID = 0){
    // проверки
    $bCanAdd = true;
      if (empty($nID)){
       // id
       $this->_iloadNCheck($this->m_nID, 'id', $bCanAdd);
    }else{
       $this->m_nID = $nID;
    }
    
    if (!$bCanAdd){
       return false;
    }
    
    $oNewsTag = $this->CreateObject('CNewsTag');
    $arrRows = array();
    $arrRows = array_chunk($arrRows, 5);
    $arrRows = $arrRows[0];
    $this->m_arrRecords = array();
    $arrRows = $oNewsTag->LoadRelative($this->m_nID);
    //~blah blah blah~
    
    }

    Ребята. Это порнотрэш.

    Sum, 03 Ноября 2010

    Комментарии (1)
  8. Java / Говнокод #4524

    +145

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    private TaskScheduler scheduler;
    
      protected TaskScheduler() {
      }
    
      public final TaskScheduler getScheduler() {
        if (this.scheduler == null) {
          this.scheduler = new TaskScheduler();
        }
        return this.scheduler;
      }

    мелочь, а смешно получилось ))

    Lure Of Chaos, 03 Ноября 2010

    Комментарии (2)
  9. Java / Говнокод #4523

    +145

    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
    @Override
      public void run() {
        while (true) {
          try {
            if (this.getTime() == this.peek().getTime()) {
              this.pop().run();
            }
            Thread.sleep(1000);
          } catch (final InterruptedException e) {
            break;
          }
        }
      }

    кто найдет говняшку, тот получит... = )

    если что, я уже исправил )))

    Lure Of Chaos, 03 Ноября 2010

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

    +73

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private long tournamentId;
    
    /**
     * The winner takes it all
     * The loser standing small
     * Beside the victory
     * That's her destiny
     */
    private boolean theWinnerTakesItAll;

    dvb, 03 Ноября 2010

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