Laravel Türkiye Discord Kanalı Forumda kod paylaşılırken dikkat edilmesi gerekenler!Birlikte proje geliştirmek ister misiniz?

Windows platformunda kullanmadığım için bir şey diyemem. İşlem yapılabilmesi için o dosyanın fiziksel konumuna ulaşılması gerekir.

Benim fikrimi sorarsan bu tarz işleri javascript ile hallet inanılmaz seçenek var karşında. Ben böyle şeyleri laravel, php ile yapmam

    hackerman Veritabanında olan bir bilgiyi yalnızca JS ile nasıl dışarı aktaracağın konusunda bizi aydınlatır mısın?

      sineld Tabi ki api yardımıyla. Küçük bir post isteği yeterli olur güvenlik içinse JWT yeterli görüyorum bu iş için. Veriyi bastıktan hemen sonra tokenın süresi bitirilebilir expiration zamanını belirleyerek yada range tarzı parça parça gönderebilir. JS ile çok daha hızlı olacaktır. Sadece backend tarafında gerekli ayarlamalar yapılması yeterli yani belirli tarih aralığı veya ilgili sayfadaki veriler istendiğinde karşılaması yeterli..

      Büyük bir veritabanından tüm veriler çekilecekse query builder' a direk bağlanabilir, socket ile event tetikleyebilir, veya queue ve jobs ile arkaplanda döndürür. Laravel echo bunu karşılıyor ayrıca birşey yapılmasına gerek yok javascriptte aynı php gibi. Son söylediklerim kullanıcıyı yüklenmekle bekletmemek içindi. Eğer masif birşeyse video işleme işlemi gibi süreci kişiden bağımsızlaştırmak gerekir. Belki indirmek için kendi dosyanıza buluta atmayı tercih edebilirsiniz o taraf projenin büyüklüğüne amacına kişinin insiyatifine bağlı.
      Demek istediğim pdf, excel her ne olursa olsun php ile dinamik olmaz ama js ile istediğiniz yerine müdehal etmekte özgürsünüz. Belli bir kolonu tutup değiştirip veritabanına arayüzden yaptığınız değişikliği gönderebilirsiniz yani indirmeden arayüzdede düzenler. Ben php kullanmam böyle işlemlerde. Guzzle unirestte kullanmam bunlar javascriptte daha kolay ve güzel. Yani demek istediğim youtube , gdrive , twitter api yazacaksanız istekleri php ile yapmak bana biraz gereksiz geliyor.

      Çok gerek olmaz ama farklı atraksiyonlar isteniyorsa arkaya node server kurulabilir ayrıyeten o işleme özel. Ben onu da deniyorum realtime search özelikleri için.

      sineld Eskiden binary data I/O şeklindeymiş ama 2007 ve sonrasında binary yanında OOXML de gelmiş. O yüzden veritabanından gelen veri ya Excel binary verisine dönüştürülmeli ya da OOXML standartlarına göre XLSX formatına dönüştürülmeli. Sadece biriyle çalışan ya da ikisini de kullanan farklı dillerde kütüphaneler var. Büyük veri için genellikle CSV tercih ediliyor.

      Eğer veri çok büyükse, oluşturulup excel yazıcıya gönderilmemeli. Onun yerine bellekte tutulmayıp dosyaya stream edilmeli. Data chunk ile parça parça kullanıcıya ya da arka planda dosyaya stream edilebilir ya da Exceljs gibi stream destekleyen kütüphanlerden çekilerek dosyaya yazılabilir. Bunları araştırabilirsiniz.

        mgsmus > hackerman Ben böyle şeyleri laravel, php ile yapmam

        Bu ibare üzerine yazdım; netice arkaplan bir işleme zaten ihtiyacınız var, yalnızca JS ile olmaz, onu söylemeye çalıştım.

        Açıklamalar için teşekkürler.

          sineld Kimse backendsiz yapılacağını düşünmez.

          bir yıl sonra

          Bu paketle excel aktarımı işlemini yaptım ama 10.000 satırlı bir excel dosyasının 500.satırında "60 saniyelik işlem süresi limitine" takılıyor. Sunucudan değerleri artırdım ama durum değişmedi. Laravel'de bu süreyi kısıtlayan bir ayar var mıdır?

            alaca33 php.ini içerisinde max_execution_time değerini arttırmanız lazım. Elbette önce neden 500. satıra gelinceye kadar o kadar süre geçti onu araştırın belki süreyi kısaltmanın yolunu bulursunuz.

              mgsmus

              Hocam o değeri 2400 yaptım ama yine aynı yerde duruyor aktarım.

              Her satırda 130 kadar sütun var ve 500x130=65.000 veri girişi demek oluyor. Bundan dolayı olabilir mi acaba?

                Hocam işlemi localde yapıyordum ama aktarmaya çalıştığım sunucu, uzak sunucu idi. Ondan dolayı imiş. Laravel dosyalarını sunucuya atıp orada denediğimde verileri çok kısa bir anda aktardı.

                Teşekkürler.