Resource ID # 3 без использования MySQL

Я создаю бренд-чекер для моей стажировки. Одна из его частей — это то, где вы вводите имя, и средство проверки проверяет в Твиттере, взято имя пользователя или нет. Вот код, который я сделал (file_get_contents не работает на моем сервере):

<?php
$ch = curl_init();
$timeout = 0;
curl_setopt ($ch, CURLOPT_URL, "https://twitter.com/users/username_available?username=".$z);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$twitter_contents = curl_exec($ch);
curl_close($ch);

echo $ch;
?>

$z определяется над кодом, где я проверяю Facebook для имени пользователя. Это определяется как то, что люди вводят в качестве названия своей потенциальной компании.

echo $ch; выводит идентификатор ресурса № 3. Везде люди говорят о том, что это не ошибка, а результат MySQL, который нужно проверить var_dump(), Но, как вы можете видеть, я извлекаю данные не из MySQL, а из Twitter.com.

Программа проверки Facebook также использует cURL и работает безупречно. И да, я выключился $ch с другими переменными.

У кого-нибудь есть решение моей проблемы?

Редактировать: Я только что попробовал echo(var_dump($ch));и вернулся resource(3) of type (Unknown)

1

Решение

Вы повторяете неправильный результат. В вашем коде вы загружаете результат в $twitter_contents используя следующий код:

 $twitter_contents = curl_exec($ch);

Если вы измените свое эхо на это, оно должно работать:

echo $twitter_contents;

Чтобы объяснить мой ответ немного подробнее, $ ch — это ваш Curl, функция, которая не возвращает реальную страницу. Это возвращает ресурс, curl_exec получает фактическое содержимое страницы и загружает результат в переменную. Который вы затем можете использовать, чтобы делать другие вещи.


Хорошо, после некоторых комментариев, я придумал это, и это сработало … вроде ..

    $url = "https://twitter.com/users/username_available?username=test";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
$result['contents']=curl_exec($ch);
$result['info']=curl_getinfo($ch);
curl_close($ch);
echo $result['contents'];

Мы пропустили «CURLOPT_SSL_VERIFYPEER», в котором нуждается твиттер .. очевидно.

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]