gpt4 book ai didi

mysql - 在 laravel 中发送 ajax 后,laravel 在自定义文件中查询?

转载 作者:行者123 更新时间:2023-11-29 10:47:19 24 4
gpt4 key购买 nike

我在我的服务器上创建了一个 ajax.php 文件,并使用 ajax 和 jquery 将 id 发送到该文件。

我想在该 ajax.php 文件中运行数据库查询来获取结果。

我无法做到这一点。

你能帮我一下吗?

Jquery 代码:

$('.invitebyemail').click(function(){
var email = $('#add-members-event-email').val();
var eventid = $('.eventid').val();
var pathname = window.location.pathname; // Returns path only
var url = window.location.href; // Returns full URL
var APP_URL = {!! json_encode(url('/')) !!};
alert(APP_URL);
alert(url);
$.ajax({
url: APP_URL+'/ajax.php',
type: 'POST',
data: { id: eventid },
success: function (data) {
alert(data);
},
error: function () {
alert('error');
}
});
return false;
});

Ajax 文件代码:

use DB;
$eventid = $_POST['id'];
echo $eventid;
$users = DB::table('users')->get();
print_r($users);

谢谢

最佳答案

如果你使用 laravel,我不相信使用这样的 .php 文件是正确的方法......它并没有真正遵循 MVC 模式。

我建议创建一个 Controller php artisan make:controller MyController在 Controller 上创建一个这样的函数

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use Validator;
use Session;
use Auth;
use Response;
use DB;
use App\User;

class MyController extends Controller{
public function getUsers(Request $request){
$users = DB::table('users')->get();
// If you need access to request parameters use this ( $request->id ) being id the parameter name
return response()->json(["users" =>$users]);
}

}

像这样在 ProjectFolder/routes/web.php 中创建路由

Route::post('/getUsersAjax',[
'uses'=>'MyController@getUsers',
'as'=>'getUsers'
]);

在你的 jquery 中,不要忘记将 _token 添加到你的数据中 data: { id: eventid , _token : token}, (如果您需要此 token ,您可以在 .blade.php 文件中,您的 View 中,使此

<script>
var token = "{{Session::token()}}";
var urlRequest = "{{route('getUsers')}}";
</script>

)

https://laravel.com/docs/5.4/controllers

https://laravel.com/docs/5.4/routing

关于mysql - 在 laravel 中发送 ajax 后,laravel 在自定义文件中查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44324692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com