Надымский форум

 
Ответ
Старый 23.12.2009, 23:33   #1
Dima
Бывалый
 
Аватар для Dima
 
Регистрация: 23.12.2009
Адрес: Internet
Сообщений: 31
Поблагодарил(а): 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация : 2

Отправить сообщение для Dima с помощью ICQ
По умолчанию PHP кодинг :)

Давайте выкладывать в этой теме готовые скрипты\модули, но при одном условии! Что этот скрипт\модуль вы написали сами
Ну, а если написали не сами, но очень хочется поделится, то указывайте хотя бы кто автор
Могу выложить собственно написанную гостевую книгу =)
__________________
<textarea>test</textarea>
Dima вне форума   Ответить с цитированием
Старый 23.12.2009, 23:43   #2
Dima
Бывалый
 
Аватар для Dima
 
Регистрация: 23.12.2009
Адрес: Internet
Сообщений: 31
Поблагодарил(а): 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация : 2

Отправить сообщение для Dima с помощью ICQ
По умолчанию

Сейчас вам расскажу как граббить инфу ( в данном случае рейтинг на сайте paint.3dn.ru)
для этого нам нужно
1 - то что нам нужно сграбить
2 - откуда мы будим граббить то что нам нужно
~~~
1 - в данном случае моя репутация равна 27
2 - http://paint.3dn.ru/index/8-274

сначала нам нужно понять что все php скрипты начинаются с <? и заканчиваются ?>

у нас уже есть
PHP код:
<?
?>

но этого мало
так теперь добавим функцию коннект через кёрл
выглядит это так
PHP код:
<?
function connect($link){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$otvet = curl_exec($ch);
curl_close($ch);
return $otvet;}
?>
так .. теперь мы берём ссылку на страницу с которой будем граббить и добавляем её в скрипт под переменной $link и пришиваем с кёрла $otvet

PHP код:
<?
function connect($link){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$otvet = curl_exec($ch);
curl_close($ch);
return $otvet;}
$link = 'http://paint.3dn.ru/index/8-274';
$otvet=connect($link);
?>
ура! мы соеденились с сервером о_О
терь дело за граббингом
код для сграбливания я расписывать не буду .. берите уже готовый и пользуйтесь на здоровьё ^_^
PHP код:
$begin = 'пишите тут то что стоит перед тем что нам нада сграбить';
$begin = strpos($otvet, $begin) + strlen($begin);
$end = 'сдесь пишем то что стоит после того что нам нада сграбить';
$end = strpos($otvet, $end, $begin);
$lc = substr($otvet, $begin, $end - $begin);
?>
пример :
если нам нада грабить число 27 с страницы http://paint.3dn.ru/index/8-274
смотрим исходник и находим число 27
Код HTML:
<div id="block4" class="udtb"><div class="udtlb">Репутация:</div> <a title="Смотреть историю репутации" class="repHistory" href="javascript://" onclick="new _uWnd('Rh',' ',400,250,{autosize:1,maxh:300,minh:100},{url:'htt p&
#58;//paint.3dn.ru/index/9-274'});return false;">27</a></div>
видим что число 27 запихнуто в return false;"> и </
тогда у нас получится
PHP код:
<?
function connect($link){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$otvet = curl_exec($ch);
curl_close($ch);
return $otvet;}
$link = 'http://paint.3dn.ru/index/8-274';
$otvet=connect($link);
$begin = 'return false;"><b>';
$begin = strpos($otvet, $begin) + strlen($begin);
$end = '</';
$end = strpos($otvet, $end, $begin);
$lc = substr($otvet, $begin, $end - $begin);
?>
вот и всё ... сграббили .. но как вывести на экран ?!
берём примитивную команду эхо и выводим переменную $lc
PHP код:
echo($lc);
урок готов желаю удачи вам юные скриптописатели

полный скрипт


PHP код:
<?
function connect($link){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$link);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_GET, 1);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_COOKIE, $cookie);
$otvet = curl_exec($ch);
curl_close($ch);
return $otvet;}
$link = 'http://paint.3dn.ru/index/8-274';
$otvet=connect($link);
$begin = 'return false;"><b>';
$begin = strpos($otvet, $begin) + strlen($begin);
$end = '</';
$end = strpos($otvet, $end, $begin);
$lc = substr($otvet, $begin, $end - $begin);
echo($lc);
?>
Пример работы скрипта http://xdd.site40.net/DisasteR.php

Автор : DisasteR
Специально для Paint.3dn.Ru
__________________
<textarea>test</textarea>
Dima вне форума   Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход