【问题标题】:Intel XDK With Codeigniter带有 Codeigniter 的英特尔 XDK
【发布时间】:2014-03-31 01:12:24
【问题描述】:

我正在尝试在我的英特尔 XDK 项目中使用 codeigniter 来处理后端数据

我在 index.html 中有以下表格:

<form method="POST" class='ajax'>
    <input type="text" name="user" />
    <input type="password" name="password" />
    <input type="submit" value="send" /> 
</form>

当我尝试使用我的 js 函数访问控制器时,我得到了找不到文件的状态:

$('form.ajax').on('submit', function(){
var that = $(this),
url = "../../controllers/welcome.php";
method = that.attr("method"),
data = {};

that.find("[name]").each(function(index, value){
    var that = $(this),
    name= that.attr("name");
    value = that.val();
    data[name] = value;
});

$.ajax({
    url:url,
    type:method,
    data:data,
    success: function(response){
        console.log(response);
    }
});

});

url 路径指向文件,但它仍然显示状态为 404:localhost:58889/http-services/emulator-webserver/ripple/userapp//C/xampp/htdocs/my_project_folder/application/controllers/welcome .php

我是否必须在我的 htacces 和配置文件中设置一些东西,就像在网站中一样?

还有一件事,我的 XDK 项目位于应用程序内的视图文件夹中

提前致谢

【问题讨论】:

    标签: codeigniter intel-xdk


    【解决方案1】:

    您在 ajax 调用 (../../controllers/welcome.php) 中引用的文件只能在向浏览器提供页面的 Web 服务器的上下文中工作。这不是 HTML5 混合应用程序的工作方式,没有“网络服务器”(即使错误消息看起来好像有一个)。

    您需要提交到网络服务器,在这种情况下,您需要指定该网络服务器的名称。在 HTML5 混合应用中,应用中的 index.html 页面对于设备来说是“本地的”,它不是由网络服务器通过网络提供的,因此它不是该域或上下文的一部分。

    我希望我说的有道理......

    【讨论】:

    • 谢谢伙计,这很有意义。我已经用 xdk 开发了一个应用程序,我知道你在说什么,但由于我正在尝试使用一个框架,我有点希望它像一个网站一样工作,不过有一个问题:一旦我在web-server,我可以使用codeigniter模型和控制器函数来正常处理它,对吧?
    • 是的,你可以在你的网络服务器上使用你喜欢的任何东西来操作从你的 XDK 客户端应用程序传递给它的数据——使用 PUT 或 websockets 传递的数据或...... :)跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-23
    • 1970-01-01
    相关资源
    最近更新 更多