2013-05-15 25 views
0

空間。當我正在一個XML請求我就是用這個如何調用JSON URL在PHP,其中包括在查詢

$movie_name="Dabangg 2"; 
    $xml = simplexml_load_file("http://api.themoviedb.org/2.1/Movie.search/en/xml/accd3ddbbae37c0315fb5c8e19b815a5/"$movie_name""); 

,並正在努力tmdb.org!

現在我必須更改URL,因爲響應是JSON不是XML

我已經把它改爲

<?php 
$movie_name="Dabangg 2"; 
$url="http://api.themoviedb.org/3/search/movie?api_key=accd3ddbbae37c0315fb5c8e19b815a5&query=$movie_name"; 
$json = file_get_contents($url); 
var_dump($json); 
?> 

但是如果你搜索

它不工作

在瀏覽器

http://api.themoviedb.org/3/search/movie?api_key=accd3ddbbae37c0315fb5c8e19b815a5&query=Dabangg 2 

你會得到的結果。

Warning: file_get_contents(http://api.themoviedb.org/3/search/movie?api_key=accd3ddbbae37c0315fb5c8e19b815a5&query=Dabangg 2) [function.file-get-contents]: failed to open stream: HTTP request failed! HTTP/1.1 400 BAD_REQUEST in /home/wwww/public_html/test/movie.php on line3 

請幫我

+0

你的'$ URL = ...'行到底有沒有雙引號。 – Wiktor

+0

@Wiktor修復仍然收到相同的錯誤 '警告:file_get_contents(http://api.themoviedb.org/3/search/movie?api_key=accd3ddbbae37c0315fb5c8e19b815a5&query=Dabangg+2)[function.file-get-contents]:未能打開流:HTTP請求失敗! HTTP/1.1 406在第5行 布爾/home/www/public_html/test/movie.php不接受(假)' – Yogus

+0

也許你有限制的fopen(其內部所使用的file_get_contents'()'檢查HTTP? //php.net/manual/en/filesystem.configuration.php – Wiktor

回答

1

看看這個:http://codular.com/curl-with-php

試試下面的代碼:

<?php 
$movie_name="Dabangg 2"; 
$movie_name = urlencode($movie_name); 
$url="http://api.themoviedb.org/3/search/movie?api_key=accd3ddbbae37c0315fb5c8e19b815a5&query=$movie_name"; 
// Get cURL resource 
$curl = curl_init(); 
// Set some options - we are passing in a useragent too here 
curl_setopt_array($curl, array(
    CURLOPT_RETURNTRANSFER => 1, 
    CURLOPT_URL => $url, 
    CURLOPT_USERAGENT => 'Codular Sample cURL Request' 
)); 
// Send the request & save response to $resp 
$resp = curl_exec($curl); 
// Close request to clear up some resources 
curl_close($curl); 

var_dump($resp); 
?> 
+0

是,這是運行嗎?試試它,我得到它,我 – Yogus

+0

之前得到同樣的錯誤OK讓我檢查測試頁上。 –

+0

請立即檢查,我更新的捲曲請求的代碼。它的工作代碼我cheked我的本地系統上。如果你查詢讓我知道..! –

5

urlencode($movie_name);

此功能儘量方便編碼字符串時,在URL的 查詢部分使用,爲方便將變量傳遞給下一個 頁面的方法。