Jump to content
Larry Ullman's Book Forums

How To Create A Custom Button That Will Delete A Record


soopers
 Share

Recommended Posts

Hello everyone. I am displaying the products records in index page in which I want to display a delete button with each Item, so that when click on that delete button then it should delete that Item record.
I have set something but doesn't work, 
 

<?php
                    echo CHtml::button('Delete', array(
                        'submit' => array('item/delete', array('id' => $data->id)),
                        'confirm' => 'Are you sure?'
                            )
                    );
                    ?>

and here is the delete action 

public function actionDelete($id)
        {
                if(Yii::app()->request->isPostRequest)
                {
                        // we only allow deletion via POST request
                        $this->loadModel($id)->delete();

                        // if AJAX request (triggered by deletion via admin grid view), we should not redirect the browser
                        if(!isset($_GET['ajax']))
                                $this->redirect(isset($_POST['returnUrl']) ? $_POST['returnUrl'] : array('admin'));
                }
                else
                        throw new CHttpException(400,'Invalid request. Please do not repeat this request again.');
        }

Where I am doing mistake ??

Thanks in advance. 

Link to comment
Share on other sites

If I'm following your code correctly, your button makes a GET request, submitting the browser to the page for deleting. But your code requires a POST request. I'd recommend having this done via Ajax, the way the grid view does it.

  • Upvote 1
Link to comment
Share on other sites

Well, I'm not going to write the code for you. You can either change what you have to allow for a GET response, or you could change the button to a form that makes a POST request, or you can look into the admin grid view code to see how that works, or you could search online.

Link to comment
Share on other sites

 Share

×
×
  • Create New...