В данной статье я расскажу вам, как работает GET CURL. Покажу рабочий пример вывода новостей с DLE на ваш сайт без использования file_get_contents(), который однозначна грузит ваш скрипт. Так же существует POST cURL ну о этом немного позже...
И так, для начала работы нам необходимо разместить файл curl_news.php в рабочем каталоге вашего DLE сайта, предварительно указав данные от MySQL в данном файле.
Ну все вывод новостей готов.
Теперь нам надо получить новости сайта DLE и поместить их на свой сайт, для этого нам надо разместить на своем сайте файл curl_post_news.php, в который мы сложим GET CURL.
И вызвать файл с помощью инклуда. Пример: include(\"curl_post_news.php\");
Ну вот и все, наш скрипт 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 "$row[title]
$row[short_story];
"; } }
///////////////////
mysql_close($con);
///////////////////////////////////////////////////////////////
?>
//Отдача новостей для 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 "$row[title]
$row[short_story];
"; } }
///////////////////
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 "$sky_result"; //Вывод контекста
///////////////////////////////////////////////////////////////
?>
//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 "$sky_result"; //Вывод контекста
///////////////////////////////////////////////////////////////
?>
И вызвать файл с помощью инклуда. Пример: include(\"curl_post_news.php\");
Ну вот и все, наш скрипт cURL работает.
Данный урок был предоставлен от .
4 комментарии
0 загрузки
Детали
- Первый релиз 06 окт 2011
- Последнее обновление 03 авг 2026
- Документация Есть
- Содержимое файлов Исходные файлы
- Всего товаров 8
- Рейтинг (0)
- Регистрация 05 апр 2011
- Уровень 0
- Пользователь подтверждён Да
- Телефон подтверждён Нет
- Email подтверждён Нет

Forceman
- 06 окт 2011все просто и гениально :)
Alex
- 06 окт 2011правда одно но....это в принципе базовые знания для парсинга.тут ничего нового не открыто и ни одной новой функции либо интересной не описано.
kirill
- 06 окт 2011=)
Buxon
- 06 окт 2011Супер