我在我的服务器上创建了一个 ajax.php 文件,并使用 ajax 和 jquery 将 id 发送到文件。
我想在该 ajax.php 文件中运行数据库查询以获得结果。
我无法做到这一点。
你能帮我么。
查询代码:
$('.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 模式。
我建议创建一个控制器php artisan make:controller MyController
,在控制器上创建一个函数
<?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},
(如果您需要此令牌,您可以在 .blade.php 文件中,您的视图,使这个
<script>
var token = "{{Session::token()}}";
var urlRequest = "{{route('getUsers')}}";
</script>
)
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句