Mostrar los mensajes de error en Laravel después de ser redirigido desde el controlador

¿Cómo puedo mostrar el mensaje de validación en la vista que se redirige en Laravel?

Aquí está mi función en un controlador

public function registeruser()
{
    $firstname = Input::get('firstname');
    $lastname = Input::get('lastname');
    $data  =  Input::except(array('_token')) ;
    $rule  =  array(
                'firstname'       => 'required',
                'lastname'         => 'required',
                   ) ;
    $validator = Validator::make($data,$rule);
    if ($validator->fails())
    {
    $messages = $validator->messages();
    return Redirect::to('/')->with('message', 'Register Failed');
    }
    else
    {
    DB::insert('insert into user (firstname, lastname) values (?, ?)',
                                array($firstname, $lastname));
    return Redirect::to('/')->with('message', 'Register Success');
    }
    }

Sé que el siguiente código es un mal intento, pero ¿cómo puedo solucionarlo y qué me estoy perdiendo?

@if($errors->has())
    @foreach ($errors->all() as $error)
        <div>{{ $error }}</div>
    @endforeach
@endif
Actualización: ¿y cómo visualizo los mensajes de error cerca de los campos particulares?

Respuestas a la pregunta(4)

Su respuesta a la pregunta