İçeriğe atla

symfony saat

Symfony Tarih ve saat ekleme

Symfony Tarih ve saat ekleme

Öncelikle base.html.twig dosyasına aşagıdaki kodu ekleyin

    <script>
        $(document).ready(function () {
            $('.form_timepicker').datetimepicker({
                format:"hh:ii",
                startView: 1
            });

            $(".form_datetime2").datepicker({
                dateFormat:"dd.mm.yy",
                monthNames: [ "Ocak", "Şubat", "Mart", "Nisan", "Mayıs", "Haziran", "Temmuz", "Ağustos", "Eylül", "Ekim", "Kasım", "Aralık" ],
                monthNamesShort:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],
                dayNamesMin: [ "Pa", "Pt", "Sl", "Ça", "Pe", "Cu", "Ct" ],
                changeMonth: true,
                changeYear: true
            });
        });
    </script>

ilgili bölümün type kısmına girin.
tarih kısmı için
form_datetime2

saat kısmı için
form_timepicker
kullanıın

        $builder->add('tarih', TextType::class   , array('label'=>'Tarih','attr'=>array('class'=>'form-control form_datetime2'))
)->add('saat', null, array('label'=>'Saat','attr'=>array('class'=>'form-control form_timepicker'))

Kontroller dosyasına girip hangi bölüme eklemek istiyorsanız o bölüme aşagıdakini yazın. Örnegin new yapacaksanız.
Değişken tanımlama bölümüne aşagıdakileri yazın.

        $tarih = date("d.m.Y");
        $saat = date("H:i");

eğer tablonuzu integer yaptıysanız

 if ($form->isSubmitted() && $form->isValid()) {

altına ekleyiniz.
$Fatura->setTarih(strtotime($form['tarih']->getData())) ;

sonrasında twig dosyasına göndermek için aşagıdaki gibi sistemi uygulayın.

        return $this->render('WebAdminBundle:fatura:new.html.twig', array(
            'Fatura' => $Fatura,
            'form'           => $form->createView(),
            'hata'           => $hata,
            'hatakodu'       => $hatakodu,
            'tarih'       => $tarih,
            'saat'       => $saat,
        ));
    }

new.html.twig dosyasına gelip

aşagakidaki gibi düzenleyin.

                            {{ form_start(form) }}
                            {{ form_row(form.tarih,{'value': tarih }) }}
                            {{ form_row(form.saat,{'value': saat }) }}
                            {{ form_widget(form) }}

buradaki form_start ve form_widget arasına yazmalısınız.

Ekranda göstermek istediğinizde kontrolerin show bölümünde

    public function showAction(Fatura $Fatura)
    {
        $deleteForm = $this->createDeleteForm($Fatura);
        $tarih = $Fatura->getTarih();
        $tarih = date("d.m.Y",$tarih);
        return $this->render('WebAdminBundle:fatura:show.html.twig', array(
            'Fatura' => $Fatura,
            'tarih' => $tarih,
            'delete_form' => $deleteForm->createView(),
        ));
    }

şeklinde düzenleyin.

show.html.twig dosyasını açın.

{{ Fatura.tarih }}

olan ismi

{{ tarih }}

şeklinde değiştirin.

Düzenleme bölümünü yapmak için.
edit action bölümünü açın.

        $tarih = $Fatura->getTarih();
        $tarih = date("d.m.Y",$tarih);

        return $this->render('WebAdminBundle:fatura:edit.html.twig', array(
            'Fatura' => $Fatura,
            'tarih' => $tarih,
            'edit_form'      => $editForm->createView(),
            'delete_form'    => $deleteForm->createView(),
            'hata'           => $hata,
            'hatakodu'       => $hatakodu,
        ));

şeklinde ekleyin.

edit.twig.html acın


                            {{ form_start(edit_form) }}
                            {{ form_row(edit_form.tarih,{'value': tarih }) }}
                            {{ form_widget(edit_form) }}

şeklinde düzenleyin.

kontroller kısmında edit actionda aşagıdaki kodu bulun

if ($editForm->isSubmitted() && $editForm->isValid()) {

altına ekle

 $Fatura->setTarih(strtotime($editForm['tarih']->getData())) ;

İndirme Linki:

http://www.tasarimrehberi.net/download/201/