我是否需要清理用户输入Laravel

我是否需要清理用户输入Laravel

本文介绍了我是否需要清理用户输入Laravel的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Eloquent中使用Laravel 4。
当我得到用户输入时,我只使用 $ name = Input :: get('name')然后执行 $ a -> name = $ name;

I am using Laravel 4 with Eloquent.When I get the user input I just use $name=Input::get('name') and then I do $a->name=$name;

我不知道函数 Input :: get 保护我免受SQL注入和XSS的攻击。如果没有,我该怎么做才能清理输入内容?

I don't know if the function Input::get protect me from SQL Injection and XSS. If it does not, what do I have to do to sanitize the input?

而且,当我在视图中显示值时,是否应该使用 {{$ a}} {{{$ a}}}

And, when I show the value in my view, shall I use {{$a}} or {{{$a}}}

问候和感谢。

推荐答案

Laravel使用PDO的参数绑定,因此您不必担心SQL注入。不过,您应该阅读。

Laravel uses PDO's parameter binding, so SQL injection is not something you should worry about. You should read this though.

Input :: get()不过滤任何内容。

Input::get() does not filter anything.

三花括号与e( )和HTML :: entities()。它们所有人都调用具有UTF-8支持的htmlentities:

Triple curly braces do the same as e() and HTML::entities(). All of them call htmlentities with UTF-8 support:

htmlentities($your_string, ENT_QUOTES, 'UTF-8', false);

这篇关于我是否需要清理用户输入Laravel的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-30 22:50