Помогите с парсингом

bor10811

Well-Known Member
Регистрация
04.04.2017
Сообщения
79
Пытаюсь разобраться с парсингом. Подскажите новичку решение проблемы:
У меня на локальном хостинге версия php 5.3.13, я пытаюсь отправить данные post-методом. Код:
PHP:
include('phpQuery.php');
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, 'http://mysite.ru/');
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, 0);
$result = curl_exec($curl);
$isWinCharset = mb_check_encoding($result, "windows-1251");
if ($isWinCharset) {
    $result = iconv("windows-1251", "UTF-8", $result);
}
if ($result === false) {
    echo "Ошибка CURL: " . curl_error($curl);
} else {
    $array = array('names'=>'My', 'addresses'=>'asd@mail.ru', 'topics'=>'Test', 'comments'=>'Example');
    curl_setopt($curl, CURLOPT_POSTFIELDS, $array);
}
Вообще ноль реакции. Сервер не ругается, но и сообщения на почту не приходят.
Пробовал поменять на такую команду:
PHP:
curl_setopt($curl, CURLOPT_POSTFIELDS, 'names=My&addresses=asd@mail.ru&topics=Test&comments=Example');
То же самое.
 

BaNru

Пацифизжу
Команда форума
Регистрация
13.11.2010
Сообщения
4 138
1) Зачем мыло отправлять курлом? Для этого есть другие функции.
2) Ты сначала выводишь $result, а потом пытаешься ещё передать данные в курл. Так оно не работает. PHP синхронный язык.
3) Какой локальный сервер? Денвер? Он не отправляет письма, он перехватывает и сохраняет у себя в папке.
4) Если 1 и 3 не актуальны, то на сервере должны быть установлены расширения для отправки, например sendmail

Ещё в конце, на всякий случай, лучше закрывать соединение
Код:
curl_close($ch);
 

bor10811

Well-Known Member
Регистрация
04.04.2017
Сообщения
79
Вы снова и снова правы. Столько ошибок сразу. Будем исправляться.

P.S: соединение закрываю, просто оно не относится к теме, так что отрезал его.
 
Верх Низ