Giriş yapmadınız.

#1 04.03.2019 23:11:07

neri
Üye
Kayıtlı: 24.07.2018
Mesajlar: 62

Formun üst üste post edilmesini önlemek

Selamlar,

Ben formun üst üste post edilmesini jquery ile önleyebiliyorum ama bunu server side tarafında yapmak daha mantıklı geliyor bana. Bu mümkün mü ?

Çevrimdışı

#2 05.03.2019 00:59:52

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,537
Website

Yanıt: Formun üst üste post edilmesini önlemek

Form sayfasını yüklemeden hemen önce bir tane token oluşturup oturum değişkeni olarak tutun ve bunu forma hidden olarak ekleyin. Örneğin _formtoken

Formun post edildiği yöntemde ise ilk işiniz formdan gelen token ile oturumda tutulan eşit mi değil mi kontrol ettirmek olsun. Eşit değilse forma hata mesajı ile geri dönün. Tokenlar uyuşsun ya da uyuşmasın, oturumdan siliyorsunuz. Böylece sunucu tarafında da çift gönderimi engellemiş olursunuz.

Bunun için bir tane middleware yazmak mantıklı olurdu.

Çevrimdışı

#3 05.03.2019 09:02:08

neri
Üye
Kayıtlı: 24.07.2018
Mesajlar: 62

Yanıt: Formun üst üste post edilmesini önlemek

mgsmus yazdı:

Form sayfasını yüklemeden hemen önce bir tane token oluşturup oturum değişkeni olarak tutun ve bunu forma hidden olarak ekleyin. Örneğin _formtoken

Formun post edildiği yöntemde ise ilk işiniz formdan gelen token ile oturumda tutulan eşit mi değil mi kontrol ettirmek olsun. Eşit değilse forma hata mesajı ile geri dönün. Tokenlar uyuşsun ya da uyuşmasın, oturumdan siliyorsunuz. Böylece sunucu tarafında da çift gönderimi engellemiş olursunuz.

Bunun için bir tane middleware yazmak mantıklı olurdu.

Teşekkür ederim üstad peki laravel'in kendi tokeni neden bunu yapmıyor ?

Çevrimdışı

#4 05.03.2019 10:13:00

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,537
Website

Yanıt: Formun üst üste post edilmesini önlemek

CRSF token'ın her seferinde yenilenmesi demek kullanıcının sadece bir tarayıcı penceresi ile sadece seri işlem yapacağını düşünmek demektir ama elbette bu pratikte mümkün değil. Siz de bir siteye girdiğinizde bazı linkleri ayrı sekmede açıyorsunuzdur. Bu durumda mevcut penceredeki token, ayrı sekmede açılan sayfanın token'ı yenilemesinden dolayı geçersiz hale gelecektir. Örneğin bir form dolduruyorsunuz, altta bilgilendirmeyi okuyun diye bir link var, parantez içinde ayrı sayfada açılır yazıyor. Onu tıklıyorsunuz ve okuyorsunuz, o sırada token değişti ama formun olduğu sekmede hidden olarak hala eski token var. Tekrar forma dönüp gönder diyorsunuz ve token mistmatch hatası alıyorsunuz.

Çevrimdışı

#5 05.03.2019 10:20:15

neri
Üye
Kayıtlı: 24.07.2018
Mesajlar: 62

Yanıt: Formun üst üste post edilmesini önlemek

mgsmus yazdı:

CRSF token'ın her seferinde yenilenmesi demek kullanıcının sadece bir tarayıcı penceresi ile sadece seri işlem yapacağını düşünmek demektir ama elbette bu pratikte mümkün değil. Siz de bir siteye girdiğinizde bazı linkleri ayrı sekmede açıyorsunuzdur. Bu durumda mevcut penceredeki token, ayrı sekmede açılan sayfanın token'ı yenilemesinden dolayı geçersiz hale gelecektir. Örneğin bir form dolduruyorsunuz, altta bilgilendirmeyi okuyun diye bir link var, parantez içinde ayrı sayfada açılır yazıyor. Onu tıklıyorsunuz ve okuyorsunuz, o sırada token değişti ama formun olduğu sekmede hidden olarak hala eski token var. Tekrar forma dönüp gönder diyorsunuz ve token mistmatch hatası alıyorsunuz.

Güzel açıklamışsınız sağolun söylediğiniz gibi o zaman en mantıklı yol middleware oluşturmak.

Çevrimdışı

#6 05.03.2019 13:02:54

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 406

Yanıt: Formun üst üste post edilmesini önlemek

@mgsmus simdi dusunuyorum da,ben neredeyse 2005 ten beri bu işe gonul vermiş biriyim iyi kotu bir şeyler yapıyoruz.2004 bilgisayar öğretmenliği çıkışıyım.O zamanlara bakıyorsun da,senin gibi birini mumla arardıkta bulamazdık.Sen varmıydın bilmemde cevizde hunter diye biri vardı aynı senin gibi,nerelerde kimbilir kulakları çınlasın yaşı[email protected] usta bilir.Ama senin yardım isteğin çok daha farklı onlardan bile.Biz garibandık be birader kimse öğretmiyordu bize smile ahh ahh...


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#7 05.03.2019 14:05:12

neri
Üye
Kayıtlı: 24.07.2018
Mesajlar: 62

Yanıt: Formun üst üste post edilmesini önlemek

deathisonitsway yazdı:

@mgsmus simdi dusunuyorum da,ben neredeyse 2005 ten beri bu işe gonul vermiş biriyim iyi kotu bir şeyler yapıyoruz.2004 bilgisayar öğretmenliği çıkışıyım.O zamanlara bakıyorsun da,senin gibi birini mumla arardıkta bulamazdık.Sen varmıydın bilmemde cevizde hunter diye biri vardı aynı senin gibi,nerelerde kimbilir kulakları çınlasın yaşı[email protected] usta bilir.Ama senin yardım isteğin çok daha farklı onlardan bile.Biz garibandık be birader kimse öğretmiyordu bize smile ahh ahh...

Üstad merak ettim şimdi neredesin ne yapıyorsun tecrübeli birinin hikayesini ve tavsiyelerini dinlemek çok iyi gelir bize.

Çevrimdışı

#8 05.03.2019 14:13:54

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,537
Website

Yanıt: Formun üst üste post edilmesini önlemek

İletişim kolaylaştığı için böyle. Çok da büyütülecek bir konu değil smile

Çevrimdışı

#9 05.03.2019 14:17:33

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,439
Website

Yanıt: Formun üst üste post edilmesini önlemek

mgsmus yazdı:

İletişim kolaylaştığı için böyle. Çok da büyütülecek bir konu değil smile

Mütevaziliğin tavan yapmış halisin maşallah.

Çevrimdışı

#10 05.03.2019 17:04:37

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 406

Yanıt: Formun üst üste post edilmesini önlemek

mgsmus yazdı:

İletişim kolaylaştığı için böyle. Çok da büyütülecek bir konu değil smile

ya senin de ağzından 2 kelime alınmıyor ha smile iletişim kolaylaşmışmış smile 6600 kullanıyordum o zamanlar da bir şey yoktu yani smile:):):)


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#11 05.03.2019 17:06:59

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 406

Yanıt: Formun üst üste post edilmesini önlemek

neri yazdı:
deathisonitsway yazdı:

@mgsmus simdi dusunuyorum da,ben neredeyse 2005 ten beri bu işe gonul vermiş biriyim iyi kotu bir şeyler yapıyoruz.2004 bilgisayar öğretmenliği çıkışıyım.O zamanlara bakıyorsun da,senin gibi birini mumla arardıkta bulamazdık.Sen varmıydın bilmemde cevizde hunter diye biri vardı aynı senin gibi,nerelerde kimbilir kulakları çınlasın yaşı[email protected] usta bilir.Ama senin yardım isteğin çok daha farklı onlardan bile.Biz garibandık be birader kimse öğretmiyordu bize smile ahh ahh...

Üstad merak ettim şimdi neredesin ne yapıyorsun tecrübeli birinin hikayesini ve tavsiyelerini dinlemek çok iyi gelir bize.

ayrı bir mevzu bu kardeş.Yaş olmuş bizde yolun yarısı.Genc yazılımcılara itekleme görevi görmeye çalışıyoruz işte.
Tavsiye dersen çok çalış bu işi yapacaksan.Çalışmaktan başka çareniz yok.


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#12 06.03.2019 18:46:11

ferhatyesilmen
Üye
Kayıtlı: 31.05.2014
Mesajlar: 58

Yanıt: Formun üst üste post edilmesini önlemek

deathisonitsway yazdı:

@mgsmus simdi dusunuyorum da,ben neredeyse 2005 ten beri bu işe gonul vermiş biriyim iyi kotu bir şeyler yapıyoruz.2004 bilgisayar öğretmenliği çıkışıyım.O zamanlara bakıyorsun da,senin gibi birini mumla arardıkta bulamazdık.Sen varmıydın bilmemde cevizde hunter diye biri vardı aynı senin gibi,nerelerde kimbilir kulakları çınlasın yaşı[email protected] usta bilir.Ama senin yardım isteğin çok daha farklı onlardan bile.Biz garibandık be birader kimse öğretmiyordu bize smile ahh ahh...

hocam cevizde seninde çok desteğini gördük smile o zamanların @mgsmus  su sensin smile

Çevrimdışı

#13 10.03.2019 10:17:05

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 406

Yanıt: Formun üst üste post edilmesini önlemek

ferhatyesilmen yazdı:
deathisonitsway yazdı:

@mgsmus simdi dusunuyorum da,ben neredeyse 2005 ten beri bu işe gonul vermiş biriyim iyi kotu bir şeyler yapıyoruz.2004 bilgisayar öğretmenliği çıkışıyım.O zamanlara bakıyorsun da,senin gibi birini mumla arardıkta bulamazdık.Sen varmıydın bilmemde cevizde hunter diye biri vardı aynı senin gibi,nerelerde kimbilir kulakları çınlasın yaşı[email protected] usta bilir.Ama senin yardım isteğin çok daha farklı onlardan bile.Biz garibandık be birader kimse öğretmiyordu bize smile ahh ahh...

hocam cevizde seninde çok desteğini gördük smile o zamanların @mgsmus  su sensin smile

yok be babam tırt hepsi.ha şu var ama 1-2 kişi sayemde çok iyi yerlere geldi hala dua ettiklerini soyluyolar bana.ama onlarda php yazmıyolar artık smile
biri canavar gibi rugbyci olmuş mesela.O zamanları pure php vardı,şimdi esamesi bile okunmuyor artık,yazanı dövüyolar smile yine de farklı bir havası vardı oranın.


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

Forum alt kısmı