如何在提交表单后阻止订阅表单再次出现在索引页面中

时间:2017-04-06 19:15:39

标签: php laravel

我有一个包含订阅者表单的索引页面。当用户输入他们的电子邮件地址时,用户再次重定向到索引页面,表单再次出现

那么,如何禁用它, 如果我可以使用cookie或会话或jquery,我有一些想法但不起作用?目前我正在使用laravel 5.4

我尝试了这个,但没有工作

在我的控制器中

public function postEmailPosts(Request $request){


    $this->validate($request,[
        'email' => 'required|unique:sub_scribers',
    ]);

    $cookie = Cookie::make('submit',1, 60);

    SubScriber::create($request->all());
    return redirect()->back();

}

在我的索引中我有这段代码

@if(Session::get('submit')==1)

    <div class="subscribe-me text-center">
        <h1>كن دائما مع أخبار البادية</h1>
        <h2>إشترك في القائمة البريدية لمجلة البادية</h2>
        <a href="#close" class="sb-close-btn"><img class="<img-responsive></img-responsive>" src="src/images/others/close-button.png" alt="" /></a>
        <form action="{{ route('email.subscribe') }}" method="post" id="popup-subscribe-form" name="subscribe-form">
            <div class="input-group">
                <span class="input-group-addon"><img src="src/images/others/icon-message.png" alt="" /></span>
                {!! Form::email('email',null,['placeholder'=>'إدخل البريد اﻹلكتروني']) !!}
                <button type="submit" name="subscribe">أذهب</button>
                <input type="hidden" name="_token"  value="{{ Session::token() }}">
            </div>
        </form>
    </div>  <!--/.subscribe-me-->
    @endif

谢谢你

1 个答案:

答案 0 :(得分:0)

试试这个

public function postEmailPosts(Request $request){

    $this->validate($request,[
        'email' => 'required|unique:sub_scribers',
    ]);

    SubScriber::create($request->all());
    // using ->withCookie
    return redirect()->back()->withCookie('submit',1, 60);
}

并在索引中

@if(Cookie::get("submit")!=1)

    <div class="subscribe-me text-center">
        <h1>كن دائما مع أخبار البادية</h1>
        <h2>إشترك في القائمة البريدية لمجلة البادية</h2>
        <a href="#close" class="sb-close-btn"><img class="<img-responsive></img-responsive>" src="src/images/others/close-button.png" alt="" /></a>
        <form action="{{ route('email.subscribe') }}" method="post" id="popup-subscribe-form" name="subscribe-form">
            <div class="input-group">
                <span class="input-group-addon"><img src="src/images/others/icon-message.png" alt="" /></span>
                {!! Form::email('email',null,['placeholder'=>'إدخل البريد اﻹلكتروني']) !!}
                <button type="submit" name="subscribe">أذهب</button>
                <input type="hidden" name="_token"  value="{{ Session::token() }}">
            </div>
        </form>
    </div>  <!--/.subscribe-me-->
@endif