从javascript $ .post获取laravel中的$ _post

时间:2015-08-20 21:37:51

标签: php laravel post .post

我有一个像这样的脚本的html(顺便说一句,因为我的html使用旧式帖子的原因)......

@extends('layout')
// ... includes for jquery and ajax
<script>
var theVariableINeedInLaravel = "SomeInterestingStringI'mSure"; // in reality, this is a stringify.
$.post ("foo", function(theVariableINeedInLaravel) {
}
</script>
@stop

然后在routes.php ...

<?php
Route::post('foo', 'ThatOneController@getValue');
?>

然后,在相关的控制器.... ThatOneController.php

class ThatOneController extends \BaseController{
    public function getValue(){
    error_log(print_r($_POST,true)); // returns nothing.
    error_log(print_r(input::all()); // returns nothing.
}

}

或者,该功能的替代版本......

public function getValue(Request $request){
error_log(print_r($request->all()); // returns nothing.

}

它们似乎都不起作用。我怎样才能得到我的帖子变量?

2 个答案:

答案 0 :(得分:1)

试试这个

use Request;
class ThatOneController extends \BaseController{

public function getValue(){
  print_r(Request::all());
}

答案 1 :(得分:0)

事实证明,即使$ _post始终无法从控制器功能中访问, 也可以直接从路由访问。它有点hacky,而不是laravel方式&#34;但你可以在路由中使用$ _post来获取并传递给其他变量以恢复正常流程。