0

APIに対してAjax検索リクエストを作成し、データをPHPファイルに返したいのですが、現在はJavascriptとjQueryを使用して作業を行っています。しかし、APIキーを公開したくないという理由だけで、PHPにすべての作業を任せたいと思っています。また、データベースのデータをさらにキャッシュしたい場合もあります。単純なはずですが、クリーンにする方法、javascriptを呼び出して返す方法、またはPHPと「統合」する方法がわかりません。

次のように、PHPをMVCパターンで実行しています。

「mastercontroller/index」から呼び出されたコントローラー:

class SearchController {

    public function DoControl($view, $model) {
        $ret = "";

        $ret .= $view->GetSearchForm();

        if($view->TriedToSearch()) {
            if($view->GetSearchString()) {
                $ret .= $model->CheckSearchString($view->GetSearchString());
            } else {
                // Didn't search for anything
            }
        } else {
            // Didn't press the search button
        }

        return $ret;
    }
}

私のビューはHTMLフォームを返し、送信が押されているかどうかを確認し、上記のモデルに送信している検索文字列も返します。

モデル:

class SearchModel {

    public function CheckSearchString($searchString) {
        // 1. Call Googlebooks api with the searchstring
        // 2. Get JSON response to return to the controller
        // 3. The controller sends the data to the View for rendering
    }
}

どうすればいいのかわからない。

4

2 に答える 2

1

完全にはわかりませんが、JavaScriptを使用せずにAJAXリクエストを実行する方法を質問されているようです。それはできませんXmlHttpRequest。JavaScriptなしでオブジェクトを使用することはできません。伝説によると、これがAJAX名の「J」の由来です。

特定のAPIを呼び出すにはRESTを使用する必要があるようです。RESTful状態を使用すると、Webサービスを使用して、事前定義されたAPIに従って特定のデータを返すことができます。データはXMLまたはJSONで返すことができます。

これは、Googleが提供するキーを使用してPHPのcURL実装で非常に簡単に行うことができます。

PHP APIとサンプルコードへのリンクについては、 GoogleのGoogleブックスAPIファミリーのページをご覧ください。

于 2013-01-06T13:01:18.440 に答える
-1

以下の練習はあなたに役立ちますか?コードにajax機能を実装したいだけの場合。

シンプルなAJAX-PHPとJavascript

内容を間違えてごめんなさい。以下の2つはどうですか。

phpPHPHTTPの単純なhttpリクエストの例-別のstackoverflowの質問から
のリクエスト*

しかし、私はajaxがクライアントプログラムの意味の主なものだと思います。サーバー側では、httpリクエストと呼んでください。

于 2013-01-06T10:41:39.997 に答える