Пример работы GET CURL
Пример работы GET CURL
В данной статье я расскажу вам, как работает GET CURL. Покажу рабочий пример вывода новостей с DLE на ваш сайт без использования file_get_contents(), который однозначна грузит ваш скрипт. Так же существует POST cURL ну о этом немного позже...

И так, для начала работы нам необходимо разместить файл curl_news.php в рабочем каталоге вашего DLE сайта, предварительно указав данные от MySQL в данном файле.
<?PHP
//Отдача новостей для curl get
///////////////////////////////////////////////////////////////
$bd_host = "localhost"; //обычно localhost
$bd_user = ""; //имя пользователя
$bd_password = ""; //Пароль базы  данных
$bd_base = ""; //Имя базы данных
$url = ""; //URL - пример http://www.сайт.ру/
///////////////////////////////////////////////////////////////
$con = mysql_connect($bd_host, $bd_user, $bd_password);
mysql_select_db($bd_base, $con);
mysql_query ("set names 'cp1251'");
mysql_query ("set character_set_client='cp1251'");
mysql_query ("set character_set_results='cp1251'");
mysql_query ("set collation_connection='cp1251_general_ci'");
///////////////////////////////////////////////////////////////
$sql="select id,title,short_story,alt_name,category from dle_post order by date DESC limit 10"; // 10 это лимит вывода новостей
$res=mysql_query($sql); while ($row=mysql_fetch_array($res)) {
$sql_ct="select alt_name from dle_category where id='$row[category]'";
$res_ct=mysql_query($sql_ct); while ($row_ct=mysql_fetch_array($res_ct)) {
echo "<b><a href=$url$row_ct[alt_name]/$row[id]-$row[alt_name].html>$row[title]</a></b><br />$row[short_story];<br />"; } }
///////////////////
mysql_close($con);
///////////////////////////////////////////////////////////////
?>

Ну все вывод новостей готов.

Теперь нам надо получить новости сайта DLE и поместить их на свой сайт, для этого нам надо разместить на своем сайте файл curl_post_news.php, в который мы сложим GET CURL.
<?PHP
//CURL GET
///////////////////////////////////////////////////////////////
$url = "http://www.site.ru/curl_news.php"; //Откуда берем CURL вывод новостей
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30); //Время задержки 30 сек.
curl_setopt($ch, CURLOPT_USERAGENT, 'Opera 10.00'); //Показываем что мы не скрипт а клиент браузера
$sky_result = curl_exec($ch);
curl_close($ch);
///////////////////////////////////////////////////////////////
echo "<b>$sky_result</b>"; //Вывод контекста
///////////////////////////////////////////////////////////////
?>

И вызвать файл с помощью инклуда. Пример: include("curl_post_news.php");

Ну вот и все, наш скрипт cURL работает.

Данный урок был предоставлен от SKY Studio.


Рубрика: Информация » Программирование   |   Автор: kirill   |   Просмотры: 4411
Комментариев: 18
Публикаций: 3
ICQ: 3999520
- 4 +
  Автор: Buxon   |   Группа: Пользователи   |   Дата: 06 октября 2011  
Супер wink
Комментариев: 64
Публикаций: 8
ICQ: 959098
- 82 +
  Автор: kirill   |   Группа: Программисты   |   Дата: 06 октября 2011  
Цитата: Buxon
Супер
=)
Комментариев: 338
Публикаций: 169
ICQ: 650073308
- 291 +
  Автор: Alex   |   Группа: Пользователи   |   Дата: 06 октября 2011  
правда одно но....это в принципе базовые знания для парсинга.тут ничего нового не открыто и ни одной новой функции либо интересной не описано.
Комментариев: 138
Публикаций: 2
ICQ: 567777707
- 490 +
  Автор: Forceman   |   Группа: Пользователи   |   Дата: 07 октября 2011  
все просто и гениально :)
Информация

Посетители, находящиеся в группе Гости, не могут оставлять комментарии к данной публикации.