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

    +162

    1. 1
    $text = preg_replace("#<a(.*?)\/a>|(h.*?:\/\/)?([a-z0-9- .]+\.[a-z ]*)#si","",$text);

    Регулярное выражение, задача которого уничтожить все существующие ссылки на сторонние сайты содержащиеся в переменной $text
    Друг посчитал, что коду место на этом ресурсе :)

    wowerwower, 15 Января 2011

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

    +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
    <form id="form1" name="form1" method="post" action="2.php">
    ...
    </form>
    <?php session_start ();
    ?>
      <?php 
    
    $_SESSION['dataa'] = $_POST['dataa'];
    $_SESSION['datab'] = $_POST['datab'];
    $_SESSION['datac'] = $_POST['datac'];
    $_SESSION['datad'] = $_POST['datad'];
    $_SESSION['datae'] = $_POST['datae'];
    $_SESSION['dataf'] = $_POST['dataf'];
    $_SESSION['datag'] = $_POST['datag'];
    $_SESSION['datah'] = $_POST['datah'];
    $_SESSION['datak'] = $_POST['datak'];
    $_SESSION['datal'] = $_POST['datal'];
    if ($_SESSION['dataa'] == "1") { include 'data/data1.php';};
    if ($_SESSION['datab'] == "1") { include 'data/data2.php';};
    if ($_SESSION['datac'] == "1") { include 'data/data3.php';};
    if ($_SESSION['datad'] == "1") { include 'data/data4.php';};
    if ($_SESSION['datae'] == "1") { include 'data/data5.php';};
    if ($_SESSION['dataf'] == "1") { include 'data/data6.php';};
    if ($_SESSION['datag'] == "1") { include 'data/data7.php';};
    if ($_SESSION['datah'] == "1") { include 'data/data8.php';};
    if ($_SESSION['datak'] == "1") { include 'data/data9.php';};
    if ($_SESSION['datal'] == "1") { include 'data/data10.php';};
    
    
    print_r ($_SESSION);
    ?>
    
    <?php //if ($_SESSION['dataa'] == "1") { include 'data/data1.php';};?>
    
    
    
    
    <p> </p>
    <p> </p>

    http://www.php.ru/forum/viewtopic.php?p=258218

    Полный и безнадежный долбоебизм

    Devzirom, 15 Января 2011

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

    +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
    function load_file( $name, $include_file = "tpl" ) {
    		global $db, $is_logged, $member_id, $cat_info, $config, $user_group, $category_id, $_TIME, $lang, $smartphone_detected, $dle_module;
    
    		$name = str_replace( '..', '', $name );
    
    		$url = @parse_url ($name);
    		$type = explode( ".", $url['path'] );
    		$type = strtolower( end( $type ) );
    
    		if ($type == "tpl") {
    
    			return $this->sub_load_template( $name );
    
    		}
    
    		if ($include_file == "php") {
    
    			if ( !$this->allow_php_include ) return;
    
    			if ($type != "php") return "Для подключения допускаются только файлы с расширением .tpl или .php";
    
    			if ($url['path']{0} == "/" )
    				$file_path = dirname (ROOT_DIR.$url['path']);
    			else
    				$file_path = dirname (ROOT_DIR."/".$url['path']);
    
    			$file_name = pathinfo($url['path']);
    			$file_name = $file_name['basename'];
    
    			if ( stristr ( php_uname( "s" ) , "windows" ) === false )
    				$chmod_value = @decoct(@fileperms($file_path)) % 1000;
    
    			if ( stristr ( dirname ($url['path']) , "uploads" ) !== false )
    				return "Файл находится в недопустимой папке /uploads/";
    
    			if ( stristr ( dirname ($url['path']) , "templates" ) !== false )
    				return "Файл находится в недопустимой папке /templates/";
    
    			if ($chmod_value == 777 ) return "Файл {$url['path']} находится в папке, которая доступна для записи (CHMOD 777). В целях безопасности подключение файлов из таких папок невозможно. Измените права на папку, чтобы на нее небыло прав на запись.";
    
    			if ( !file_exists($file_path."/".$file_name) ) return "Файл {$url['path']} не найден, его загрузка невозможна.";
    
    			if ( $url['query'] ) {
    
    				parse_str( $url['query'] );
    
    			}
    
    			ob_start();
    			$tpl = new dle_template( );
    			$tpl->dir = TEMPLATE_DIR;
    			include $file_path."/".$file_name;
    			return ob_get_clean();
    
    		}
    
    		return '{include file="'.$name.'"}';
    
    
    	}

    DLE software, доставило
    Шеф заказал сайт на этой цмс...

    DanxilLs, 15 Января 2011

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

    +35

    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
    <?php
    include_once './includes/bootstrap.inc';
    drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);
    module_load_include('inc', 'node', 'node.pages'); 
    
    $queryPopQueue = "select * from custom_contact_insert where drupal_node_id is null limit 50";
    $queryResult =  db_query($queryPopQueue);
    while ($data = db_fetch_object($queryResult)){
        $node->type = 'contact';
        node_object_prepare($node);
        $node->uid = 1;
        $node->title = $data->field_contact_first_name_value . ' ' . $data->field_contact_last_name_value;
        $node->body = "";
        $node->teaser = "";
        $node->filter = variable_get('filter_default_format', 1);
        $node->format = FILTER_FORMAT_DEFAULT;
        $node->language = '';
        $node->revision = 0;
        $node->promote = 0;
        $node->created = time();
        $node->comment= 0;
        
        $node->taxonomy = array('tags' => array('11' => ($data->categories)));
        $node->field_contact_first_name[0]['value'] = $data->field_contact_first_name_value;
        $node->field_contact_last_name[0]['value'] = $data->field_contact_last_name_value;
        $node->field_contact_job_title[0]['value'] = $data->field_contact_job_title_value;
        $node->field_contact_organization[0]['value'] = $data->field_contact_organization_value;
        $node->field_contact_organization_r['nid']['nid'] = '463'; //this is a sample hard coded value
        $node->field_contact_account_sfid[0]['value'] = $data->field_contact_account_sfid_value;
        $node->field_contact_sfid[0]['value'] = $data->field_contact_sfid_value;
        
        $node->field_contact_email_optout[0]['value'] = 'false';
        $node->field_contact_phone_optout[0]['value'] = 'false';
        
        $node->field_contact_add1_city[0]['value'] = $data->field_contact_add1_city_value;
        $node->field_contact_add1_country[0]['value'] = $data->field_contact_add1_country_value;
        $node->field_contact_add1_zipcode[0]['value'] = $data->field_contact_add1_zipcode_value;
        $node->field_contact_add1_state[0]['value'] = $data->field_contact_add1_state_value;
        $node->field_contact_add1_street[0]['value'] = $data->field_contact_add1_street_value;
        $node->field_contact_add1_type[0]['value'] = 'Work';
        
        $node->field_contact_add2_city[0]['value'] = $data->field_contact_add2_city_value;
        $node->field_contact_add2_country[0]['value'] = $data->field_contact_add2_country_value;
        $node->field_contact_add2_zipcode[0]['value'] = $data->field_contact_add2_zipcode_value;
        $node->field_contact_add2_state[0]['value'] = $data->field_contact_add2_state_value;
        $node->field_contact_add2_street[0]['value'] = $data->field_contact_add2_street_value;
        $node->field_contact_add2_type[0]['value'] = 'Home';
        
        $node->field_contact_mobile_phone[0]['value'] = $data->field_contact_mobile_phone_value;
        $node->field_contact_home_phone[0]['value'] = $data->field_contact_home_phone_value;
        $node->field_contact_work_phone[0]['value'] = $data->field_contact_work_phone_value;
        $node->field_contact_asst_phone[0]['value'] = $data->field_contact_asst_phone_value;
        
        $node->field_contact_email1[0]['value'] = $data->field_contact_email1_email;
        $node->field_contact_email2[0]['value'] = $data->field_contact_email2_email;
        $node->field_contact_email_asst[0]['value'] = $data->field_contact_email_asst_email;
        
        $node->field_contact_assistant[0]['value'] = $data->field_contact_assistant_value;
        $node->field_contact_notes[0]['value'] = $data->notes;
          
        node_save($node);
        $nid = $node->nid;
        unset($node);
        
        //update status and drupalid in the queue
        $queryUpdate = "update custom_contact_insert set drupal_node_id = '$nid', status = '1' where id = '" . $data->id . "'";
        db_query($queryUpdate);
    }
    ?>

    вот вам высер. не мой на этот раз :)

    brainstorm, 14 Января 2011

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

    +159

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function DateFromDBToHr($date)
    {
    	$datetime = explode(" ", $date);
    	$dates = explode("-", $datetime[0]);
    	return (intval($dates[0])) ? date("d-M-Y", mktime(0, 0, 0, $dates[1], $dates[2], $dates[0])) : false;
    }

    про то, что форматировать дату можно в запросе или про существование strtotime автор даже не догадывается

    elw00d, 14 Января 2011

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

    +195

    1. 1
    for($j=0;$j<23000000;$j++); //пауза ~3 сек

    Ну как вам? :)

    Yanovsky, 13 Января 2011

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

    +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
    24. 24
    <?php
    require_once('MultiAutoload.php');
    
    class Dispatcher {
    
    	private $handle;
    
    	function __construct($event_handle) {
    		$this->handle = $event_handle;
    	}
    
    	function handleEvent() {
    		$name = 'Handler_'.$this->handle;
    		if (class_exists($name)) {
    			$handler_obj = new $name($this->handle);
    			$response = $handler_obj->secureHandler();
    			return $response;
    		}
    		else {
    			throw new Exception('Event handling is impossible!');
    		}
    	}
    }
    ?>

    Немного экзотики: PHP в стиле Win32! Говно за собой не сразу увидел,
    но когда "пришло озарение" было смешно.

    dwinner, 13 Января 2011

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

    +43

    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
    function ntfs_filesize($filename) 
    {
        return exec("
                for %v in (\"".$filename."\") do @echo %~zv
        ");
    }
    // LINUX SERVERS:
    // str perl_filesize( str $filename );
    /*
    DESCRIPTION: returns the filesize of a large file in string format to... 
    ... prevent 32-bit integer walls  using perl through linux command line.
    */
    function perl_filesize($filename) 
    {
        return exec("
                perl -e 'printf \"%d\n\",(stat(shift))[7];' ".$filename."
        ");
    }

    вот вам!
    http://ru.php.net/filesize отсюда.

    вообще ебанутость filesize в пхп теперь не позволит мне без костылей хранить на сайте файлы больше 2х гиг. хнык хнык
    (пока правдо не надо но я попутно свою файлопомойку хочу личную)

    brainstorm, 13 Января 2011

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

    +165

    1. 1
    2. 2
    3. 3
    if(strpos($email,'@')===FALSE)die('error');
    if(strpos($email,'.')===FALSE)die('error');
    if(strlen($email)<7)die('error');

    Четкая проверка почты. Регулярки зря придумывали :)

    assous, 13 Января 2011

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

    +161

    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
    function toTrash($id)
        {
            $data = array(
                'order_id'          => $id,
                'order_archived'    => 0,
                'order_trashed'     => 1,
    			'order_candelled' 	=> 0
            );
    
            return $this->update_order($data);
        }
    
        function toArchive($id)
        {
            $data = array(
                'order_id'          => $id,
                'order_archived'    => 1,
                'order_trashed'     => 0,
    			'order_candelled' 	=> 0
            );
    
            return $this->update_order($data);
        }
    
        function restore($id)
        {
            $data = array(
                'order_id'          => $id,
                'order_archived'    => 0,
                'order_trashed'     => 0
    			'order_candelled' 	=> 0
            );
    
            return $this->update_order($data);
        }
    	    
    	function cancelled($id)
    	    {
    	        $data = array(
    	            'order_id'          => $id,
    	            'order_archived'    => 0,
    	            'order_trashed'     => 0,
    				'order_candelled' 	=> 1
    	        );
    
    	        return $this->update_order($data);
    	    }

    DyX_LesA, 12 Января 2011

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