Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ajax/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何在Laravel中使用AJAX与控制器通信?_Php_Ajax_Laravel - Fatal编程技术网

Php 如何在Laravel中使用AJAX与控制器通信?

Php 如何在Laravel中使用AJAX与控制器通信?,php,ajax,laravel,Php,Ajax,Laravel,我使用CodeIgniter已经一年多了(我已经非常习惯了),然后发现它已经过时了,Ellisab已经取消了对它的支持。我想尝试使用Laravel作为替代方案,尽管CodeIgniter仍然可以正常工作,但出于未来的目的,我不想落后。现在,有了Laravel的MVC框架,我可以很容易地从CI迁移一些项目。我对Laravel的路由有问题,因为我无法与我的控制器通信。以下是我的一些代码: controller.php: public function connect() { $this-&g

我使用CodeIgniter已经一年多了(我已经非常习惯了),然后发现它已经过时了,Ellisab已经取消了对它的支持。我想尝试使用Laravel作为替代方案,尽管CodeIgniter仍然可以正常工作,但出于未来的目的,我不想落后。现在,有了Laravel的MVC框架,我可以很容易地从CI迁移一些项目。我对Laravel的路由有问题,因为我无法与我的控制器通信。以下是我的一些代码:

controller.php

public function connect() {
    $this->load->model('home_model');
    if ($DBconnect=$this->home_model->checkConnection()) {
        echo json_encode(array(
            "success" => true,
            "db_connect" => $DBconnect
        ));
    } else {
        echo json_encode(array(
            "success" => false,
            "db_connect" => $DBconnect
        ));
    }
}
view.js

    $("#connection").click(function(e) {
        e.preventDefault();
        show_loading();
        $.get('./home/connect', function(data) {
            hide_loading();
            Materialize.toast(data.db_connect, 4000, 'rounded green');
        }, "json");
    });

PS:我是用Laravel的方式还是我仍然很有CI意识?

这是我与控制器连接的方式

首先设置routes.php:

Route::controller('/','MyController');
在controller app/controller/MyController.php上(您需要创建一个):


这就是我们使用Route::controller方法的方式。

这是我连接控制器的方式

首先设置routes.php:

Route::controller('/','MyController');
在controller app/controller/MyController.php上(您需要创建一个):


这就是我们使用Route::controller方法的方式。

您使用的是什么版本的laravel?你需要学习如何在laravel中使用route。我正在使用4.2.11@RomnickSusa,是的,这就是我来这里的原因:DLaravel 4.2有一个很好的文档。你打开了吗?事实上我正在读。试试我的答案。希望能对你有所帮助。你使用的是什么版本的laravel?你需要学习如何在laravel中使用route。我正在使用4.2.11@RomnickSusa,是的,这就是我来这里的原因:DLaravel 4.2有一个很好的文档。你打开了吗?事实上我正在读。试试我的答案。希望对你有帮助。
dash(-)
真的有必要吗?你的意思是这样吗
$.get('localhost/connect',function(data){
是的,不要忘记大小写。您需要像这样命名函数
方法类型+驼峰大小写名称
。我尝试了
$.get('http://127.0.0.1/laravel/public/connect,函数(数据){
,但它似乎没有从控制器获取任何数据。使用
Route::controller('/','Home');
打开
Route.php
是否真的需要
dash(-)
呢?你的意思是这样的?
$.get('localhost/connect',函数(数据){
是的,别忘了大写。你需要像这样命名你的函数
方法类型+驼峰大小写名称
。我试过
$。get('http://127.0.0.1/laravel/public/connect,函数(数据){
,但它似乎没有从控制器获取任何数据。使用
Route::controller('/',Home');
on
Route.php
$.get(`http://127.0.0.1/laravel/public/connect`,function(data){
    alert(data.var_name);
})