Make change in your Url manager as shown
'urlManager'=>array(
//HK_DEVELOPER NR:CHANGED TO GET TO GET THE URL IN DESIRED FORMAT
'urlFormat'=>'get',
'rules'=>array(
'<controller:\w+>/<id:\d+>'=>'<controller>/view',
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
'<controller:\w+>/<action:\w+>'=>'<controller>/<action>',
),
),
And the sample confirm action Send the email in the format of get parameters with the key in the url and get that key in action as i have done in passkey
public function actionConfirm(){
//HK_DEVELOPER_NR:This action will confirm the user and change status from not authorize to authorized
$passkey=$_GET['key'];
$details=User::model()->findByAttributes(array('confirmationCode'=>$passkey));
if(count($details)>=1)
{
if($details['userStatusId']==2){
//CHECK IF AUTHORIZED REDIRECT TO PROFILE VIEW
$url=Yii::app()->createUrl('site/login&joinbdp=false');
$this->redirect($url);//USER CLICKS ON THE REGISTERATION LINK TWICE
}else{
$register=new Registerationconf;
$value=$details['userId'];
$register->userId=$value;
$register->IPAddress=Yii::app()->request->userHostAddress;
$register->confirmationTime=new CDbExpression('NOW()');
$register->save();
//CHANGE STATUS FROM NOT AUTHORIZED TO AUTHORIZED
$post=User::model()->updateAll(array('userStatusId'=>'2'), 'confirmationCode=:confirmationCode',array(':confirmationCode'=>$passkey));
$this->render('sucess');
}
}else {
//IF USER IS REMOVED AND TRIES TO ACTIVATE THE LINK AGAIN
echo "Please use valid URL. ";
}
}