2016-02-02 3 views
1

Я новичок в Laravel, я хочу иметь форму комментария и любой может заполнить его, и данные Ипуть будет вставлен в базе данных после того, как проверяющий:Как сохранить данные в базе данных в laravel 5.1?

<?php 

namespace App\Http\Controllers; 

use App\comments; 
use Illuminate\Http\Request; 
use App\Http\Requests; 
use App\Http\Controllers\Controller; 

class CommentController extends Controller 
{ 
    public function postCommentNew(Request $request) 
    { 
     $this->validate($request, [ 
      'commenter' => 'required|max:255', 
      'email' => 'required|max:255', 
      'comment' => 'required', 
      'post_id' => 'required' 
     ]); 
     comments::create($request->all()); 

     return redirect()->back()->with('success' , 'Comment Submited') ; 
    } 


} 

теперь я хочу, чтобы быть уверенными, что никто не будет повредить мой сайт! Я хочу полностью сохранить данные! Я не знаю, нужно ли дезинформировать ввод формы? если ваш ответ «да», как мне это сделать?

Я видел это here:

public function sanitize() 
    { 
     $input = $this->all(); 

     if (preg_match("#https?://#", $input['url']) === 0) { 
      $input['url'] = 'http://'.$input['url']; 
     } 

     $input['name'] = filter_var($input['name'], FILTER_SANITIZE_STRING); 
     $input['description'] = filter_var($input['description'], 
     FILTER_SANITIZE_STRING); 

     $this->replace($input);  
    } 
+0

I я спрашиваю о санитарном фильтре только для вставки базы данных –

ответ

1

Laravel 5.1 Касательно документации:

По умолчанию Блейд {{ }} заявления автоматически передаются через htmlentities функции PHP для предотвращения XSS атак.

Итак, ответ: вам не нужно создавать дополнительные вещи для дезинфекции ввода формы.

Что касается SQL-инъекции, Laravel использует подготовленный PDO-оператор (Reference) и защищен от возможной SQL-инъекции.

Пример в вашем вопросе предназначен для защиты инъекций от URL, что хорошо.

И, наконец, я уже упоминал об этом link.

Недостаточно рассчитывать на документацию и мой ответ. Поэтому я хотел бы еще раз подчеркнуть это из приведенной выше ссылке:

Вы должны сделать свой собственный тест на проникновение, когда ваш проект делается для обеспечить каждую вещь работает, и обеспечены, как и планировалось

+0

Вы действительно приветствуетесь;) –

 Смежные вопросы

  • Нет связанных вопросов^_^