How can I do a simple search using a form?

I want to do a search using a form which will search name field, brand field and category field.

  1. Should I be using post or get for this situation?

  2. How/where should I be creating my query search model, model or controller?

Any code snippets would be great.

I have the following in my view:




        <?php $form = ActiveForm::begin(['id' => 'home-search','method' => 'get', 'action' => Url::to(['productitem/search'])]); ?>

    

        <?= $form->field($productitem, 'name')->textInput(array('placeholder' => 'What are you looking for?'))->label(false) ?>


        <?= $form->field($productitem, 'brand_id')->dropDownList(


            ArrayHelper::map(ProductBrand::find()->all(),'id','name'),

            ['prompt'=>'Select Brand']


        )->label(false) ?>


        <?= $form->field($productitem, 'category_id')->dropDownList(


            ArrayHelper::map(ProductCategory::find()->all(),'id','name'),

            ['prompt'=>'Select Department']


        )->label(false) ?>


        <div class="form-group search-button">

            <button type="submit" class="btn btn-primary" name="login-button">Search <i class="fa fa-lg fa-arrow-circle-o-right"></i></button>

        </div>


        <?php ActiveForm::end(); ?>