执行Ajax GET请求以将数据返回给PHP

时间:2013-01-06 10:18:44

标签: php ajax jquery

我想再次发一个Ajax搜索请求API并将数据返回到我的PHP文件,现在我正在使用Javascript和jQuery来完成这项工作。但我想让PHP完成所有工作,仅仅因为我不希望我的API密钥公开,我可能想要在数据库中进一步兑现数据。它似乎应该很简单,但我无法弄清楚如何干净,调用javascript并返回或如何与PHP“集成”。

我在MVC模式中使用我的PHP,就像这样:

从“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
    }
}

我无法弄清楚应该怎么做。

2 个答案:

答案 0 :(得分:1)

我不完全确定,但您似乎在询问如何在没有JavaScript的情况下执行AJAX请求。你不能这样做 - 没有JavaScript就无法使用XmlHttpRequest对象。根据传说,这就是AJAX名称中“J”的来源。

听起来您需要使用REST来调用特定的API。 RESTful状态允许您使用Web服务根据预定义的API返回特定数据。数据可以XML或JSON格式返回。

使用Google为您提供的任何密钥,您可以使用PHP的cURL实现轻松完成此任务。

有关PHP API和示例代码的链接,请参阅Google的Google Books API Family页面。

答案 1 :(得分:-1)

以下练习对您有用吗?如果您只想在代码中实现ajax功能。

Simple AJAX - PHP and Javascript

<击> 我很抱歉误解了内容。下面两个怎么样:

simple http request example in php
来自另一个stackoverflow问题的PHP HTTP-Request *

但我认为ajax是客户端程序意义上的主要内容。在服务器端,只需将其称为http请求。