1. Список говнокодов пользователя dimiork

    Всего: 3

  2. PHP / Говнокод #4123

    +144

    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
    <?php 
    date_default_timezone_set('Europe/Kiev');
    header('Content-Type: text/html; charset=utf-8');
    include_once 'simplehtmldom/simple_html_dom.php';
    
    /* формирование урл */ 
    $url="http://ru.wikipedia.org/wiki/"; 
    $date_today = date("j"); 
    $down="_"; 
    $test="%D0%B0%D0%B2%D0%B3%D1%83%D1%81%D1%82%D0%B0"; 
    $full=$url.$date_today.$down.$test; 
    echo $full; 
    
    ?>
    
    <hr>
    
    <?
    $html = file_get_html($full);
    
    foreach($html->find('p') as $element) 
           echo $element->plaintext . '<br>';
    
    
    $html->clear(); 
    unset($html);
    ?>

    Суть: парсить на свой сайт в зависимости от даты первую строку из википедии о том какой сегодня день. Сей код тянет следующее:

    Состояниеотпатрулирована
    29 августа — 241-й день года (242-й в високосные годы) в григорианском календаре. До конца года остаётся 124 дня.
    См. также: Категория:Праздники 29 августа
    Дата дана по новому стилю[1]:
    См. также: Категория:События 29 августа
    См. также: Категория:Родившиеся 29 августа
    См. также: Категория:Умершие 29 августа


    а нужна только вторая строка. Средствами самого simplehtmldom на сколько я понял нельзя ограничить вывод.
    Возможно ли придумать какой-нить костыль к echo, которое выводит массив $element ?

    dimiork, 29 Августа 2010

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

    +144

    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
    <?php
    date_default_timezone_set('Europe/Kiev');
    header('Content-Type: text/html; charset=utf-8');
    /*Создаем класс объектной модели документа, что-то типа как в JS. */
    $dom = new domDocument;
    
    /*Загружаем наш ХТМЛ файл*/
    $dom->loadHTMLfile('page.html');
    
    /*Ищем всем елементы с тегом таблицы, в даном случае, он у нас один*/
    $table =  $dom->getElementsByTagName('table');
    
    /*Ищем все теги рядов внутри найденной таблицы, item(0) указывает на то, что нужнр брать только первую найденную таблицу. Ещё раз, таблица у нас одна!!!!!!!*/
    $rows = $table->item(0)->getElementsByTagName('tr');
    
    for($i=1;$i<=115;$i++){
        /*Циклом заносим в переменную $cols все данные колонок td для каждого ряда tr внутри таблицы */
        $cols = $rows->item($i)->getElementsByTagName('td');
        /*Выводим в браузер только первую колонку ряда TR, и это у нас имя, если поставить вместо ноля единицу, то выведет Фамилию, если 2-ку поставить, выведет возраст, тут думаю все понятно.*/
        echo $cols->item(3)->nodeValue." ";
    }
    
    
    /*ДОМАШНЕЕ ЗАДАНИЕ: поэксперементируйте!!! помогоает в обучении!!!*/
    
    /*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*//*УДАЧИ!!!!!!!*/
    
    ?>

    dimiork, 19 Августа 2010

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

    +148

    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
    95. 95
    96. 96
    97. 97
    98. 98
    <?php
    if (!$action){
    	echoheader('addnews', $echo['header']);
    ?>
    
    <form method="post" name="addnews" action="<?=$PHP_SELF; ?>" onsubmit="return process_form(this)">
    
    
    
    <!-- короткая -->
    <fieldset id="short"><legend><?=$echo['short']; ?></legend>
    
    <?
    	echo run_filters('new-advanced-options', 'short');
    ?>
    
    
    <textarea name="short_story" tabindex="4"></textarea>
    </fieldset>
    
    
    
    <!-- кнопки -->
    <fieldset id="actions"><legend><?=$echo['actions']; ?></legend>
    <input type="submit" value="<?=$echo['add']; ?>" accesskey="s">
    </fieldset>
    
    
    
    
    
    <?
    	}
    ?>
    
    <fieldset id="date"><legend><?=$echo['date']; ?></legend>
    <input type="text" name="day" size="10" maxlength="2" value="<?=date('d'); ?>" title="<?=$echo['calendar']['day']; ?>" readonly>
    
    <input type="text" name="month" size="10" maxlength="10" value="<?=date('M'); ?>" readonly>
    
    
    
    <input type="text" name="year" maxlength="4" value="<?=date('y'); ?>" title="<?=$echo['calendar']['year']; ?>" readonly> <input type="text" name="hour" maxlength="2" value="<?=date('H', (time() + $config_date_adjust * 60)); ?>" title="<?=$echo['calendar']['hour']; ?>" readonly>:<input type="text" name="minute" maxlength="2" value="<?=date('i', (time() + $config_date_adjust * 60)); ?>" title="<?=$echo['calendar']['minute']; ?>" readonly>:<input type="text" name="second" maxlength="2" value="<?=date('s', (time() + $config_date_adjust * 60)); ?>" title="<?=$echo['calendar']['second']; ?>" readonly>
    </fieldset>
    
    
    
    </div></fieldset>
    
    <input type="hidden" name="mod" value="addnews">
    <input type="hidden" name="action" value="doaddnews">
    </form>
    
    <?
    	echofooter();
    
    
    // ********************************************************************************
    // Do add News to DB
    // ********************************************************************************
    if ($action == 'doaddnews'){
    	if (($added_time = strtotime($day.' '.$month.' '.$year.' '.$hour.':'.$minute.':'.$second)) == -1){
    		$added_time = (time() + $config_date_adjust * 60);
    	}
    
    	if (!$title){
    		$title = substr($short_story, 0, 10).'...';
    	}
    
    	$id = $sql->last_insert_id('news', '', 'id') + 1;
    
    	run_actions('new-save-entry');
    
    	$sql->insert(array(
    	'table'	 => 'news',
    	'values' => array(
    				'date'	   => $added_time,
    				'author'   => $member['username'],
    				'title'	   => replace_news('add', $title),
    				'short'	   => strlen(replace_news('add', $short_story)),
    				'full'	   => strlen(replace_news('add', $full_story)),
    				'avatar'   => $avatar,
    				'category' => $category,
    				'url'	   => ($url ? my_namespace($url) : my_namespace(totranslit($title))),
    				'hidden'   => (($config_approve_news == 'yes' and $member['level'] > 2) ? true : false)
    				)
    	));
    
    	$sql->insert(array(
    	'table'	 => 'story',
    	'values' => array(
    				'post_id' => $id,
    				'short'	  => replace_news('add', $short_story),
    				'full'	  => replace_news('add', $full_story)
    				)
    	));
    
    	run_actions('new-save-entry');

    dimiork, 14 Августа 2010

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