Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.10.2017, 13:17   #1
lomPHP
Новичок
Джуниор
 
Регистрация: 13.10.2017
Сообщений: 1
По умолчанию Дублирование в выводе, как убрать?

Есть вот такая функция:
Код:
function seach_str($y = null, $params = null, $url = null){
	
	$h = null;

	$content = gets($url);

	preg_match_all('/<div class="post_line lin(.*?)\>/s', $content, $posts);

	foreach($posts[1] as $str)if($h < $y){

		preg_match('/data-type="(.*?)\_/', $str, $type);

		preg_match('/line post(.*?)\"/', $str, $no);

		if($params == 1){

			if($type[1] == 'posts')if($h++ < $y){
				
				$result = $no[1].'<br />';
				
			}

		}else{
			
			if($type[1] == 'posts')if($h++ < $y){						
				
				$result = $no[1].'<br />';				

			}

			if($type[1] == 'blogs')if($h++ < $y){
										
				$result = $no[1].'<br />';	

			}
	
		}
		
		echo $result;
	}
}
Она парсит информацию со страницы имеющую вид:
[spoiler=Код страницы]
Цитата:
<div style="display: none">
<div class="post_line line post405462" data-type="blogs_type">
<div class="w60 left align-center">
405462 </div>
<div class="w300 left">
<span class="project_name">Новости</span>
</div>
<div class="w150 left">
<a class="button projectDetails" data-id="405462" data-href="" href="javascript:void(0);">Посмотре ть новость</a>
</div>
<div class="w150 right align-center">
<a href="javascript:" id="405462" title="Оставить отзыв" class="tipsy_class bother_project"></a>
<a href="javascript:" data-id="405462" title="Поставить оценку" class="tipsy_class delete_project"></a>
</div>
<div class="clear"></div><!-- /clear -->
</div>
</div>


<div style="display: none">
<div class="post_line line post405463" data-type="posts_type">
<div class="w60 left align-center">
405463 </div>
<div class="w300 left">
<span class="project_name">Новости</span>
</div>
<div class="w150 left">
<a class="button projectDetails" data-id="405463" data-href="" href="javascript:void(0);">Посмотре ть новость</a>
</div>
<div class="w150 right align-center">
<a href="javascript:" id="405463" title="Оставить отзыв" class="tipsy_class bother_project"></a>
<a href="javascript:" data-id="405463" title="Поставить оценку" class="tipsy_class delete_project"></a>
</div>
<div class="clear"></div><!-- /clear -->
</div>
</div>
[/spoiler]

Но проблема что когда параметр 0 ($params т.е. вывод всех найденых id работает нормально и выводит нужно количество, указаных в $y), а при указании 1 водит дублирующие. Как решить данную проблему?
lomPHP вне форума Ответить с цитированием
Старый 13.10.2017, 15:48   #2
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,156
По умолчанию

сам то понял - что хотел? я не очень
напиши - если вызываем функцию вот так - то .... тот-то то получаем
а если вот так - то вот это.... а хотел не это а вот третье ...
тогда понятнее будет
ADSoft вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как убрать округление при выводе данных в DBGridEh cherry25 БД в Delphi 3 13.04.2016 22:03
Убрать изображения при выводе из базы данных serrgggeee PHP 2 21.12.2014 20:42
Убрать дублирование кода шаблонной функции higimo Общие вопросы C/C++ 1 25.12.2013 12:27
Как избежать дублирование данных в списке? Di_sol Microsoft Office Access 4 09.12.2011 18:15
Пользователь запретил приглашать себя в приложения", сколько не парился никак не могу убрать. Как убрать? nigretos Свободное общение 3 10.06.2011 15:48