php - 如何从ajax中检索数据?

标签 php ajax

我有以下代码

在 Controller 中

class AccountController extends Controller
{

    public function login(Request $request) {
      $data=$request->all();
      //print_r($request->all())
     //return view('main',['data'=>$data]);
     }
 }

在途中

Route::get('account/login', function() {
  return View::make('manager.test');
});
Route::post('account/login', 'AccountController@login');

登录 View

@extends('layout.manager')
@section('content')
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="csrf-token" content="{{ csrf_token() }}">
<title>Example of Bootstrap 3 Vertical Form Layout</title>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> 
<style type="text/css">

</style>
<script type="text/javascript">
$(document).ready(function(){
  $('.send-btn').click(function(){            
    $.ajax({
      url: 'login',
      type: "post",
      data: {'email':$('input[name=email]').val(), '_token': $('input[name=_token]').val()},
      success: function(data){
        console.log(data);
      }
    });      
  }); 
});
</script>
</head>
<body>
<div class="bs-example">
 <div class="secure">Secure Login form</div>
{!! Form::open(array('url'=>'account/login','method'=>'POST', 'id'=>'myform')) !!}
<div class="control-group">
  <div class="controls">
     {!! Form::text('email','',array('id'=>'','class'=>'form-control span6','placeholder' => 'Email')) !!}
  </div>
</div>
<div class="control-group">
  <div class="controls">
  {!! Form::password('password',array('class'=>'form-control span6', 'placeholder' => 'Please Enter your Password')) !!}
  </div>
</div>
{!! Form::button('Login', array('class'=>'send-btn')) !!}
{!! Form::close() !!}
</body>
</html>                                     

@stop

当我单击“提交”时,来自 ajax 的所有数据都将在我的浏览器控制台中打印。我尝试传递 ajax 值以在我的 Controller 中查看,但每次它返回 500 内部错误。任何人都可以告诉如何将 ajax 值传递给另一个查看以及我哪里做错了? 谢谢

更新

以下内容无效

public function login(Request $request) {
          $data=$request->all();
       $send= User::where('email','=', $data->email)
        return view('main',['data'=>$send]);
         }



public function login(Request $request) {
             return Redirect::to('home');
             }

每个想法都工作正常。唯一的问题是当我返回 View 时。它会在浏览器控制台中抛出 500 内部错误错误,否则如果我在 Controller 内打印 _r 那么它将在我的浏览器控制台中显示数据。

更新2

在我的 Controller 中

public function login(Request $request) {

    $data=$request->all();

    return $data;
}

Object { email: "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="dbb6bab5babcbea99bbcb6bab2b7f5b8b4b6" rel="noreferrer noopener nofollow">[email protected]</a>", _token: "gqqXvVfwbKRHQWczYNfFMmB9ZB943CLfLdG…" }

最佳答案

在 jquery 的成功回调中,您可以访问数据对象的每个元素,如演示所示

success: function(data){
        alert(data.email);
        alert(data._token);
      }

关于php - 如何从ajax中检索数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32409652/

相关文章:

php - 无法使用 StackExchanges 的 PageDown 将 markdown 转换为 HTML

java - 转换为PDF/A并检查Linux下的合规性

javascript - 提交包含动态 ID 的 HTML 表单

javascript - 使用ajax通过jquery调用php函数

javascript - Javascript 中字符串的长度始终为 1?

javascript - 具有唯一 ID 的 Rails 渲染格式 js

php - Fabrik 表单提交问题,得到 JSON 响应而不是感谢页面

php - "->"PHP 运算符叫什么?

php - Laravel 循环嵌套 div

javascript - jQuery ajax,等到 beforeSend 动画结束