2014-02-08 3 views
-2

Я новичок в программировании в Yii .. У меня есть текстовое поле в views/_form, и я хочу, чтобы введенное значение в текстовом поле отправлялось как параметр к хранимой процедуре MySQL.Получите значение из текстового поля и передайте его как параметр в хранимую процедуру MySQL в yii

<div class="form"> 
<?php $form=$this->beginWidget('CActiveForm', array(
'id'=>'usercredentials-form', 
// Please note: When you enable ajax validation, make sure the corresponding 
// controller action is handling ajax validation correctly. 
// There is a call to performAjaxValidation() commented in generated controller code. 
// See class documentation of CActiveForm for details on this. 
'enableAjaxValidation'=>false, 
)); ?> 

<p class="note">Fields with <span class="required">*</span> are required.</p> 

<?php echo $form->errorSummary($model); ?> 

<div class="row"> 
    <?php echo $form->labelEx($model,'userCredentialsEmail'); ?> 
    <?php echo $form->textField($model,'userCredentialsEmail',array('size'=>60,'maxlength'=>128)); ?> 
    <?php echo $form->error($model,'userCredentialsEmail'); ?> 
</div> 

<?php $this->endWidget(); ?> 

</div><!-- form --> 

Я хочу получать на e-mail, введенный пользователем для отправки в качестве параметра в MySQL хранимой процедуры insert_usercred.Please Справка ..

EDIT

Это мой Usercredntialscontroller.php/actionCreate()

public function actionCreate() 
{ 

    $model=new Usercredentials; 
    $userid=Userportfolio::model()->findByPk($model->iduserCredentials); 


    // Uncomment the following line if AJAX validation is needed 
    // $this->performAjaxValidation($model); 



    if(isset($_POST['Usercredentials']) 
    { 
     $model->attributes=$_POST['Usercredentials']; 


     echo $userCredentialsEmail = $_POST["Usercredentials"]["userCredentialsEmail"]; 


     if($model->save()) 
      $this->redirect(array('view','id'=>$model->iduserCredentials)); 
    } 

    $this->render('create',array(
     'model'=>$model, 
     )); 
} 

РЕДАКТИРОВАТЬ

Это то, что я сделал, чтобы выполнить эту хранимую процедуру

if(isset($_POST['Usercredentials')) 
    { 
     $model->attributes=$_POST['Usercredentials']; 
     echo $userCredentialsEmail = $_POST["Usercredentials"]["userCredentialsEmail"]; 
     $command = Yii::app()->db->createCommand('call executeInsert($userCredentialsEmail)'); 
     if($command->execute()) 
      $this->redirect(array('view','id'=>$model->iduserCredentials)); 
    } 

    $this->render('create',array(
     'model'=>$model, 
     ' 
    )); 
} 

ответ

0

Atlast я нашел ответ

Значение из текстового поля может быть получен как этого

$userCredentialsEmail = $_POST["MODEL_CLASS_NAME"]["userCredentialsEmail"] 

он может быть передан в качестве параметра хранимой процедуры, как этого

$command = Yii::app()->db->createCommand("call executeInsert('$userCredentialsEmail')"); 

и могут быть выполнены следующим образом:

$command->execute(); 
2

Вы можете получить имя текстового поля как

echo $userCredentialsEmail = $_POST["MODEL_CLASS_NAME"]["userCredentialsEmail"] 

Для вызова хранимой процедуры,

$command = Yii::app()->db->createCommand("call my_proc($userCredentialsEmail)"); 
$command->execute(); 

См. Этот форум yii:

http://www.yiiframework.com/forum/index.php/topic/28134-stored-procedure-out-parameter/

+0

Спасибо за ур ответить @ kumar_v.But как я могу передать это значение моей хранимой процедуре в Yii .. – Lal

+0

@lal сначала отправьте код перед вопросом. –

+0

ok Я отредактировал мой вопрос..Я хочу выполнить хранимую процедуру с 'userCredentialsEmail' как параметр @kumar_v – Lal

Смежные вопросы