【发布时间】:2018-06-13 02:14:17
【问题描述】:
我有以下请求 ajax:
$("#btnSave").click(function()
{
var Url = 'http://localhost/Projetos-Laravel/Sibcomweb/public/panel/client/save';
var Dados = $('#FormClient').serialize();
$.ajax({
type:'POST',
url:Url,
dataType: 'JSON',
data: Dados,
success:function(data){
if($.isEmptyObject(data.error)){
alert(data.msg);
}else{
alert('have errors');
}
},
error:function(e){
alert('Error !');
log.console(e);
},
});
});
错误日志.console(e)
POST http://localhost/Projetos-Laravel/Sibcomweb/public/panel/client/save 500 (Internal Server Error)
send @ jquery.js:9566
ajax @ jquery.js:9173
(anonymous) @ create:431
dispatch @ jquery.js:5206
elemData.handle @ jquery.js:5014
create:446 Uncaught ReferenceError: log is not defined
at Object.error (create:446)
at fire (jquery.js:3317)
at Object.fireWith [as rejectWith] (jquery.js:3447)
at done (jquery.js:9274)
at XMLHttpRequest.<anonymous> (jquery.js:9514)
请求 ajax 转到控制器但在验证方法中有一些错误...
我认为问题出在验证器方法中,我做错了什么吗?
public function store(Request $request)
{
$dataForm = $request->all();
$rules =[
'name'=>'required|min:3|max:100',
'number'=>'required|numeric',
];
$valida = validator($dataForm, rules);
if($valida->fails())
{
return $valida;
}
else
return 'Ok';
}
我如何以 json 类型返回 var valida?
【问题讨论】:
-
在浏览器检查器中切换到网络面板,选择 ajax 调用的条目,然后查看 laravel 返回的错误。或者,查看 laravel.log 或您的网络服务器日志文件。 PHP 因某种原因崩溃,您需要准确找出原因。这样做的唯一方法是读取它返回的错误。
-
然而,另一部分是:未捕获的引用错误:未定义日志。正确的语法是 console.log(e);,而不是 log.console(e);
-
在导航的网络预览中显示此“类 Illuminate\Validation\Validator 的对象无法转换为字符串”
-
如果你在谷歌上搜索到这一点,你就更进一步了:stackoverflow.com/questions/37260036/…
-
是的,那是因为您的 PHP 脚本崩溃了。由于您在上面发布的错误。由于数据未验证,因此不会返回该错误,这是一个实际的 PHP 错误。这意味着脚本在您修复代码之前无法运行。请参阅我上面的评论。谷歌如何修复您的“类 Illuminate\Validation\Validator 的对象无法转换为字符串”错误,或点击我评论中的链接到关于它的 SO-post。
标签: php ajax laravel validation laravel-5.4