2016-10-10 93 views
0

我想使用PHP和Sql Server 2008 R2使用Update语句来更新数据库表中的某些值。任何人都可以帮助我做到这一点?如何使用MVC运行Sql Server Update语句

这是该视图类的代码。它只有一个Button。在按钮单击我想更新的设定值

<div class="box span12"> 
    <div class="box-header well"> 
    <h2><i class="icon-retweet"></i> Reset State</h2></div> 
    <div class="box-content"> 

<?php $form=$this->beginWidget('CActiveForm', array(
    'id'=>'systereset-form', 
    'enableAjaxValidation'=>false, 
    'htmlOptions'=>array('class'=>'form-horizontal'), 
    )); ?> 
    <fieldset> 
    <legend>Please select State to reset</legend> 
    <div class="form-actions"> 
    <?php echo CHtml::htmlButton('Reset State',array('class'=>'btn btn-primary','type'=>'submit','name'=>'systemreset')); ?> 
</div> 
<div class="row buttons"> 

</div> 
</fieldset> 
<?php $this->endWidget(); ?> 

</div> 

这里是控制器类此查看页面

public function actionSystemReset(){ 
    if(isset($_POST['systemreset'])){ 
     $upd="update settings set value=0 where name='SYS_STATE_VALUE'"; 
     $update=Yii::app()->db->createCommand($upd)->execute(); 
     if($update>0){ 
      Yii::app()->user->setFlash('reset','Dear user Kiosk "'.$_POST['systemreset'].'" has been reset successfully.'); 
     } 
    }  
    $this->render('systemreset',array('result'=>$result)); 
} 
+0

你在哪里分配“systemreset”值此信息不在您的代码中。 sjow所有的小部件代码.. – scaisEdge

+0

@scaisEdge。我应该分配给systemreset什么? 我是新MVC –

+0

更新您的问题添加视图的'systemreset'代码... – scaisEdge

回答

0

你只有一个按钮,你没有任何名称这个按钮,你可以简单地(避免检查$ _POST ['systemreset'])

public function actionSystemReset(){ 

    $upd="update settings set value=0 where name='SYS_STATE_VALUE'"; 
    $update = Yii::app()->db->createCommand($upd)->execute(); 
    if($update>0){ 
     Yii::app()->user->setFlash('reset','Dear user Kiosk "'.$_POST['systemreset'].'" has been reset successfully.'); 

    }  
    $this->render('systemreset',array('result'=>$result)); 
} 
+0

因为'$ _POST ['systemreset']'没有设置在任何地方,所以不应该在发送给用户的消息中使用它。 –

+0

@moni_dragu,所以我可以如何使它显示消息给用户? –

+0

@scaisEdge,它工作正常。但即使我刷新或打开页面。它的值更新为0 –