8

Codeigniterを使用して、フィルム名などを使用してローカルDVDデータベースを構築しました。私が探しているのは、このIMDBAPIからフィルムのデータをさらにロードすることです

ただし、次のエラーが発生します。

PHPエラーが発生しました

重大度:警告

メッセージ:file_get_contents(http://www.imdbapi.com/?i3%t=2 Fast 2 Furious)[function.file-get-contents]:ストリームを開くことができませんでした:HTTPリクエストが失敗しました!HTTP /1.1400不正なリクエスト

ファイル名:controllers / dvd.php

行番号:92

このURIをアドレスバーにコピーするとjsonデータが返されますが、ページに読み込むとエラーが発生します。

この特定のサイトをローカルホストで実行していることは注目に値します。私はCodeigniterに精通しているだけです。

私のコードは...

            // Send Query To IMDB Api

        $film_q = $film_name[0]->title;
        $imdb_uri = "http://www.imdbapi.com/?i=&t=$film_q";
        $json = file_get_contents($imdb_uri);
        $json = json_decode($json);

        print_r($json);

編集:これをさらに調べます。一言で言えば映画の名前は大丈夫だと思われるので、どういうわけか「+」をスペースにドリルダウンする必要があると思いますか?

4

2 に答える 2

14

試してみてくださいurlencode()

 $film_q   = urlencode($film_name[0]->title);
 $imdb_uri = "http://www.imdbapi.com/?i=&t=$film_q";
于 2012-06-16T17:18:31.967 に答える
2

映画のタイトルでurlencode()を実行することを検討してください。「ワイルド・スピードX2」のスペースが残っている可能性があります。

リンクは次のようになります。

http://www.imdbapi.com/?i=&t=2%20Fast%202%20Furious

これではない。

http://www.imdbapi.com/?i=&t=2 Fast 2 Furious
于 2012-06-16T17:22:41.170 に答える