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

    +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
    //так было до
    <?php
        // дневной/ночной фон
        $now=date("G");
        if (($now > 8) and ($now<21))
            {echo "странице задаётся дневной фон";}
        else
    	{echo "странице задаётся ночной фон";}
    
        //время на сервере	        
        echo date("Время на сервере H:i");
    
        //Выводятся знаменательные события в истории за этот день (ps: просто из папки events берётся фйл с названием $today
        $today=date("d_M");
        $event=file("event/$today");
        $line=count($event);
        echo "<center>",$event[rand(0,$line-1)],"</center>";
        $mon=explode("_",$today);
        $rus=array("Dec"=>"декабря");
        echo "<a href=\"http://ru.wikipedia.org/wiki/",$mon[0],"_",$rus[$mon[1]]>Подробнее о этом дне в Истории</a>";
    
        //история посещений
        $ip=$_SERVER['REMOTE_ADDR']." | ".date("d M H:i:s")."\n";
    ?>
    
    //так стало после
    <?php
        // дневной/ночной фон
        $now=date("d_M_G:i:s");
        $time=explode("_",$now);
        $hour=explode(":",$time[2]);
        if (($hour[0] > 8) and ($hour[0]<21))
            {echo "странице задаётся дневной фон";}
        else
            {echo "странице задаётся ночной фон";}
    
        //время на сервере
        echo "Время на сервере ",$hour[0],":",$hour[1];
    
        //Выводятся знаменательные события в истории за этот день (ps: просто из папки events берётся фйл с названием $today
        $today=$time[0]." ".$time[1];
        $event=file("event/$today");
        $line=count($event);
        echo "<center>",$event[rand(0,$line-1)],"</center>";
        $rus=array("Dec"=>"декабря");
        echo "<a href=\"http://ru.wikipedia.org/wiki/",$time[0],"_",$rus[$time[1]]>Подробнее о этом дне в Истории</a>"; 
    
        //история посещений
        $ip=$_SERVER['REMOTE_ADDR']." | ".$now."\n";
    ?>

    Так сказать попытка оптимизировать код. Был первый вариант, где функция date использовалась 4 раза с разными параметрами.
    Ну и я решил свести всё к одной date... уж и не знаю... был ли смысл) быстрее ли от этого всё будет работать...))

    Vladis_s, 17 Декабря 2011

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

    +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
    <?php
    $lst=array();
    $ip_list="http://netelis.hmsite.net/loc.txt";
    $list_ip = file_get_contents($ip_list);
    if($list_ip==FALSE){ printf("Can't open file<br>\n");exit(1);}
    preg_match_all("|(?:[1-9][0-9]{0,2})\.(?:\d{1,3})\.(?:\d{1,3})\.(?:\d{1,3})|",$list_ip,$ipl);
    $i=0;
    foreach($ipl[0] as $address){
            $lst[$i++]=$address;
            $lst[$i-1].="<br />";
    }
    $lst=array_unique($lst);
    printf("Max element %d<br>\n",sizeof($lst));
    $slst=natsort($lst);
    print_r($lst);
    ?>

    Извлекает список IP-адресов, сортирует и удаляет повторяющиеся

    AliceGoth, 17 Декабря 2011

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

    +167

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    <?php /*
    host=localhost
    db_name=db
    user=db_user
    password=db_pass
    charset=utf8
    */ ?>

    Совершенно гениальный и единственно верный способ хранить конфиги в PHP.
    Имя файла тоже, должно быть именно таким - db.ini.php

    Starkua, 16 Декабря 2011

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

    +157

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    <?php
     $db = mysql_connect(localhost, "root", "Bdffjvfjkghj4hjtg4yu56y54gbyu");
      mysql_select_db("test" ,$db);
      
    /*
     * Здесь что-то не так. Сервер зависает. Надо будет на форуме спросить
     */
     $sql = mysql_query("SELECT * FROM users" ,$db);
      
    
    mysql_close($db);
      ?>

    a_e, 16 Декабря 2011

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

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    $x = '1234';
    $pos = strlen($x);
    echo substr($x,$pos,1);
    // или так
    $x = '1234';
    $y = strlen($x);
    $num = $x[$y-1]; 
    echo $num

    Оба варианта предложил один автор

    Sulik78, 16 Декабря 2011

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

    +165

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    <?php
    $connect=odbc_connect($_POST['tablica'],"test","test");
    $query = $_POST['sql_zapros'];
    $result = odbc_exec($connect, $query) or die("Couldn't execute query!");
    odbc_result_all($result, "BGCOLOR='#c0c0c0' border='1' ");
    odbc_free_result($result);
    odbc_close($connect);
    ?>

    zloirock, 16 Декабря 2011

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

    +168

    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
    $mes_for_mail=str_replace("[code]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/code]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[b]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/b]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[i]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/i]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[u]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/u]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[s]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/s]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[tt]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/tt]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[sup]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/sup]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[sub]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/sub]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[code]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/code]","",$mes_for_mail);
    
    $mes_for_mail=str_replace("[font color=FF0000]","",$mes_for_mail);
    $mes_for_mail=str_replace("[font color=0000FF]","",$mes_for_mail);
    $mes_for_mail=str_replace("[font color=008080]","",$mes_for_mail);
    $mes_for_mail=str_replace("[/font]","",$mes_for_mail);

    я плакол)

    TBoolean, 15 Декабря 2011

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

    +164

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public function deletePubs() {
            $id = $this->core->request->parameters["id"];
            if (!empty($id)) {
            	$id++; $id--;
                $this->core->database->exec(
                "delete
    		FROM lists
    		WHERE id=".$id
                );
            }
            header("Location: /admin/about/listAbout");
        }

    Не знаю что автор хотел сделал кодом на 4-ой строке. Предполагаю, что таким образом он приводит переменную $id к целочисленному типу.

    alxkolm, 15 Декабря 2011

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

    +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
    <?
    	function lang($lang) {
    
    		$languages = array('ru', 'en', 'lv');
    	
    		foreach($languages as $lang_arr) {
    	                // Проверка, есть ли такой язык в массиве
    			if($lang == $lang_arr) {
    				// Меняем язык
    			}
    		}
    
    	}
    ?>

    in_array(); ?

    Не, не слышал... ;)

    killro0000, 15 Декабря 2011

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

    +142

    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
    <?php
    // страницы, содержимое которых надо получить
    $urls = array('www.yandex.ru', 'www.google.ru', 'www.mail.ru', 'www.rambler.ru');
     
    $rtasks = array(); // задачи чтения
    $wtasks = array(); // задачи записи
    $results = array(); // результаты
     
    foreach ($urls as $url) {
    	// открываем отдельный сокет
    	$sh = socket_create(AF_INET, SOCK_STREAM, SOL_TCP);
    	if (!$sh) continue;
     
    	// таймаут для чтения
    	socket_set_option($sh, SOL_SOCKET, SO_RCVTIMEO, array("sec" => 10, "usec" => 0));
    	// таймаут для записи
    	socket_set_option($sh, SOL_SOCKET, SO_SNDTIMEO, array("sec" => 10, "usec" => 0));
    	// задаем неблокирующий режим сокетов
    	socket_set_nonblock($sh);
    	// определяем ip хоста
    	$ip = gethostbyname($url);
    	// соединяемся
    	socket_connect($sh, $ip, 80);
     
    	// добавляем в задачи для записи
    	$wtasks[$url] = $sh;
    }
     
    // продолжаем, пока есть задачи для записи или чтения
    while ($wtasks || $rtasks) {
    	// массив для сокетов с возможностью чтения
    	$rtasks_ = $rtasks;
    	// массив для сокетов с возможностью записи
    	$wtasks_ = $wtasks;
     
    	// ждем результатов из сокетов
    	$n = socket_select($rtasks_, $wtasks_, $e=null, 10);
    	if ($n > 0) {
    		// сокеты, доступные для записи
    		foreach ($wtasks_ as $sh) {
    			// ищем урл страницы по дескриптору сокета в массиве задач записи
    			$url = array_search($sh, $wtasks);
    			// удаляем из задач записи
    			unset($wtasks[$url]);
    			// добавляем в задачи чтения
    			$rtasks[$url] = $sh;
    			// формируем http-заголовки
    			$headers  = "GET / HTTP/1.0\r\n";
    			$headers .= "Host: ".$url."\r\n";
    			$headers .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.0.6) Gecko/2009011913 MRA 5.3 (build 02557) Firefox/3.0.6\r\n";
    			$headers .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
    			$headers .= "Accept-Language: ru,en-us;q=0.7,en;q=0.3\r\n";
    			$headers .= "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n";
    			$headers .= "\r\n";
     
    			// записываем в сокет
    			if (socket_write($sh, $headers) === false) fclose($sh);
    		}
     
    		// сокеты, доступные для чтения
    		foreach ($rtasks_ as $sh) {
    			// ищем урл страницы по дескриптору сокета в массиве задач чтения
    			$url = array_search($sh, $rtasks);
    			if (!$url) continue;
    			// считываем результат из сокета
    			$result = '';
    			while ($r = socket_read($sh, 1024)) $result .= $r;
    			// закрываем сокет
    			socket_close($sh);
    			// удаляем из задач чтения
    			unset($rtasks[$url]);
    			// заносим html в массив результатов
    			$results[$url] = $result;
    		}
    	}
    	else {
    		break;
    	}
    }
    ?>

    a_e, 15 Декабря 2011

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