1

日を追加する方法yii2? チェックインとハリを入力すると、チェックアウトの値=チェックイン+ハリ. 手伝って頂けますか?ありがとう。

これはフォーム yii2 の私のコードです。日付ピッカー tanggal_masuk とフィールド jumlah_hari がデータを入力すると、日付ピッカー = tanggal_masuk+jumlah_hari になります。

    <?= DatePicker::widget([
            'model' => $model,
            'attribute' => 'TANGGAL_MASUK',
            'template' => '{addon}{input}',
                'clientOptions' => [
                    'autoclose' => true,
                    'format' => 'dd-M-yy',
                    'startDate' => date('d-M-y'),
                    'prepend' => '<i class="icon-calendar"></i>'
                ]
        ]);?>

        <?php $data = 
         ['1' => '1 Malam',
         '2' => '2 Malam',
         '3' => '3 Malam',
         '4' => '4 Malam',
         '5' => '5 Malam',
         '6' => '6 Malam',
         '7' => '7 Malam',
         '8' => '8 Malam',
         '9' => '9 Malam',
         '10' => '10 Malam',
         '11' => '11 Malam',
         '12' => '12 Malam',
         '13' => '13 Malam',
         '14' => '14 Malam',
         '15' => '15 Malam']; ?>
        <?= $form->field($model, 'JUMLAH_HARI')->widget(Select2::classname(), [
                'data' => $data,
                'language' => 'en',
                'options' => ['placeholder' => 'Hari'],
                'pluginOptions' => [
                    'allowClear' => true
                ],
            ]); ?>
          
        <font size="2"><b>Check-Out</b></font>
        <?= DatePicker::widget([
            'model' => $model,
            'attribute' => 'TANGGAL_KELUAR',
            'template' => '{addon}{input}',
                'clientOptions' => [
                    'autoclose' => true,
                    'format' => 'dd-M-yy',
                    'startDate' => date('d-M-y'),
                    'prepend' => '<i class="icon-calendar"></i>'
                ]
        ]);?>

これはフォーム yii2 での私の見解です

4

1 に答える 1

1

ウィジェット設定:

DatePicker::widget([
    'model' => $model,
    'attribute' => 'TANGGAL_MASUK',
    'template' => '{addon}{input}',
        'clientOptions' => [
            'autoclose' => true,
            'format' => 'yyyy-m-d',
            'startDate' => date('d-M-y'),
            'prepend' => '<i class="icon-calendar"></i>'
        ]
    ]);

違いは次のとおりです: 'format' => 'yyyy-m-d',(変更された形式)。

次に、このプラグインから値を取得します。たとえば、次の値からこの値を取得しますYii::$app->request->post()['Model']['TANGGAL_MASUK']

// Assigned to $time for easier access and converted to UNIX timestamp with strtotime()
$time = strtotime(Yii::$app->request->post()['Model']['TANGGAL_MASUK']);

// Let's calculate the value by adding the value of 2 days (in seconds)
$newTime = $time + 2 * 60 * 60 * 24;

// Let's convert back to your desired format (like: 29-Nov-16)
$newDate = date('y-M-d', $newTime);

これで$newDate、追加された 2 日を含む変数ができました。使用できるようにしたい場合 (DB への加算/減算または挿入)、形式を変更するか、UNIX タイムスタンプを使用する必要があることに注意してください。

于 2016-11-30T16:06:28.283 に答える