PHP - файл не получает содержимое при передаче URL из базы данных, в противном случае работает нормально - PullRequest
0 голосов
/ 07 января 2012

Я пытаюсь получить содержимое веб-страницы, используя file_get_contents

Сценарий первый:
Когда я передаю один URL-адрес непосредственно из текстового поля, он отлично работает.

Сценарий второй:
Когда я беру несколько URL-адресов в текстовой области, а затем сохраняю их в базе данных Mysql.Затем я запускаю цикл for для передачи URL в тот же фрагмент кода, что и в сценарии 1, он возвращает эту ошибку

Warning: file_get_contents( URL ) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 500 Internal Server Error in C:\wamp\www\scrape\urltoscrape.php on line 13

Я чувствовал, что проблема была с используемым типом данных.Так что изначально был varchar, я изменил его на текстовый.

Я тоже пробовал стриптиз.Когда я отображаю URL-адрес, он печатается без каких-либо дополнительных символов или пробелов.

Кроме того, поскольку он находится в цикле, я не думаю, что проблема в том, что одновременно передается несколько URL.Все URL-адреса работают по отдельности нормально при попытке через сценарий 1.

Пожалуйста, помогите.Я в своем уме.

Ответы [ 2 ]

1 голос
/ 07 января 2012

file_get_contents( URL )

Эта ошибка говорит вам, что она пытается открыть URL "URL". Убедитесь, что вы не забыли $ перед именем переменной.

0 голосов
/ 07 января 2012

file_get_contents () ожидает строку, которой он должен следовать.Теперь, если вы напишите url в качестве аргумента, он попытается получить содержимое URL

try

file_get_contents($url);
...