Set Otomatis

permisi para master mau tanya. saya punya form (seperti di gambar lampiran)…

alurnya begini jadi saat klik "id naskah" (dropdownlist) data yang lain terisi otomatis sesuai no id yang dipilih.gimana caranya ya gan supaya waktu akses halaman form itu id nya terisi otomatis.misal saya akses :


http://../index.php/naskah/trackdispo/291

itu id naskah akan terisi 291.setelah id naskah terisi, data yang lain akan terisi otomatis sesuai id nya.jadi nggak perlu pilih dari dropdownlist lagi…mohon bantuan gan :unsure:

Formnya perlu bikin pake active form mas biar gampang populate datanya, contoh di view:




<div class="form">

<?php $form=$this->beginWidget('CActiveForm'); ?>

 

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

 

    <div class="row">

        <?php echo $form->label($model,'id_naskah'); ?>

        <?php echo $form->dropDownList($model,'id_naskah', $listNaskah) ?>

    </div>

 

    <div class="row">

        <?php echo $form->label($model,'no_referensi'); ?>

        <?php echo $form->textField($model,'no_referensi') ?>

    </div>

dst...



lalu di modelnya diisi dengan nilai yg sesuai, kerjakan ini dari controller




class NaskahController extends ... {

 ...

 public function actionTrackdispo($id_naskah) {

  $model = Naskah::find('id_naskah='.$id_naskah);


  if (! empty($model)) {

    $this->render('trackdispo', array(

      'listNaskah'=>array(1=>121, 122, 123, dst), //seharusnya ditarik dari database

      'model'=>$model,

    ));

  }

 }

}



nilai model pada view akan terisi otomatis sesuai hasil find di controller,

semoga membantu.

makasih gan response nya

muncul error "Non-static method CActiveRecord::find() should not be called statically, assuming $this from incompatible context"…itu kenapa ya gan?

salah disininya ternyata gan


$model = Naskah::find('id_naskah='.$id_naskah);

setelah diubah akhirnya datanya berhasil ditampilan sesuai id…tapi saya mau tanya lagi gan.misal ada textfield begini :


<div class="dispo">

	<?php echo $form->labelEx($model,'No Referensi'); ?>

        <?php echo $form->textField($model,'no_referensi');?>

	<?php echo $form->error($model,'no_referensi'); ?>

     </div>

kan nanti yang muncul di form itu field no_referensi…waktu di save saya pengen textfield yang keisi no_referensi itu kesimpennya ke field lain.itu mungkin nggak gan?

iya, yg bener gini, nilainya field lain diisi dulu di controller:




 $model = Naskah::model()->find('id_naskah=' . $id_naskah);

 $model->field_lain = $model->no_referensi



bisa, tambahin hidden field untuk nampung nilainya, contoh:


<div class="dispo">

	<?php echo $form->labelEx($model,'No Referensi'); ?>

        <?php echo $form->textField($model,'no_referensi');?>

	<?php echo $form->error($model,'no_referensi'); ?>

        <?php echo $form->hiddenField($model,'field_lain');?>

     </div>

berhasil gan…tapi gan kalo field lain yang mau saya isi itu nilainya sama dengan id kok nggak berhasil ya? id kan nilainya tersimpan otomatis tanpa perlu disediakan field di viewnya.nah saya pengen field lain itu terisi nilainya sama dengan id.tapi nggak berhasil…bagaimana gan?