diyelim 1 numaralı kullanıcı var ve blog yazılarının olduğu tablonun kullanıcılar ile kullanıcı id si üzerinden ilişkisi var,
bu durumda olmayan bir kullanıcıya ait blog eklenemez hata verir,
on delete cascade yapılmışsa kullanıcı silindiğinde blog yazısı/yazıları da otomatikman silinir,
kısacası düzen ve kolaylık sağlıyor.
örnek vermek gerekirse 5 tablo kullanıcı ile ilişkili ise sadece kullanıcı silindiğinde anda 5 tabloda veriler silinicek diğer türlü toplamda 6 sorgu yazmak gerekecek.
çok spesifik bir olaya girmediğiniz sürece public klasöründeki dosyalara php kodu yazılmaz spesifik olarak bir şey yapmanız gerekiyorsa eğer,
örneğin bir resim dosyasını sadece üyelere göstereceksiniz
o zaman yine bir route yazıp gerekli kontrolleri route üzerinden yapar daha sonra routeda sonuç olarak o resim dosyasını dönersiniz
Route::get('/resim', function () {
if (!auth()->check()) //kullanıcı giriş yapmamışsa 401 dön
abort(401);
$file = public_path('images/ornekserfika.jpg'); //dosyayı al
if (!file_exists($file)) //dosya yoksa 404 dön
abort(404);
$resim = file_get_contents($file); //dosyanın kaynağını al
return response($resim)->header('Content-type', 'image/jpg'); //response u resim olarak dön
});
buna benzer şekilde örneklenebilir.
left değerinden kaynaklanıyor olabilir onun yerine transform: translateX kullanmayı deneyebilirsin.
İkinci yol olarak, actif/pasif vb adında bir class yazıp transition kullanarak animasyonu css ile yaptırır jquery ile de sadece classı ekler ya da kaldırırsın.
işlemi sadece 1 kere yapmakla yükümlü olan bir php sayfası hazırla.
(burda diyelim 100 kullanıcıyı döngüye alıyorsun onun yerine sadece 1 kullanıcıyı işleyecek şekilde değiştir yani.)
Başka bir sayfada frontend olarak 100 kullnıcıyı liste/tablo/json vb şekilde sırayla işleyebileceğin bir hale getir sadece idleri bile yeter büyük ihtimalle,
Daha sonra listede baştan başlayarak diyer sayfaya o kullanıcıyı gönder ajax vb bir şey ile, işlem bitince bir sonraki kullanıcıya geç.
Tek bir kullanıcının işlemi timeout'a düşürmediği sürece sıkıntı yaşamazsın, düşürürse de sadece o işlem eksik kalır bir sonraki işlemden yine devam ettirebilirsin.
En garantisi 1dk aralıklarla ajax vb. istek atıp son aktivite tarzı bir kolonu güncellemek olabilir.
Kullanıcının online/offline gösterileceği yerde de son aktivite 1dk dan önce ise online değilse offline yazacak.
Ama kötü tarafı sadece o an için alabileceksin online/offline durumunu yani 1dk dolsa ve adam terketse bile online görünecek
en güzeli socket.io gibi realtime bir şey yapmak sanırım.
Benzer olarak highlight.js de kullanabilirsin.
Sorununa tam uyuyormu bilmiyorum ama: Select2
normal bir select inputu gibi ama arama özelliği de var, ajax ile de kullanabiliyorsun.
navbar için yeni dosya açıyorlarsa bunun nedeni tek bir yerden tüm sayfalarda bulunan menüyü değiştirmektir.
Bu şekilde yaptığında, yazdığın dosyayı menü kullanmak istediğin yerde çağırırsın.
Ama tek bir yerde kullanacaksan gerekli birşey değil yeni sayfa açmadan direk menü koymak istediğin yere kodları yaz.
bir dive bunu ekleyeceğini varsayalım öncelikle dive position:relative;
vermen lazım
daha sonra divin içine bir eleman daha ekleyip örneğin bir span olsun bu onun içerisine yazıyı yazdıktan sonra
position:absolute; transform: rotate(45deg);
diyerek top ve right değerleri ile oynayarak konumlandırman gerekiyor.
php ile yapman şuan için mümkün değil gibi çünkü whastapp api desteğini vermiyor ya da herkese vermiyor gibi bir durum var.
bunu yerine Whatsapp-wep.js ile bir whatsapp botu kodlaya bilirsin.
Telefonla tarayıcı ekranından giriş yaparsın ardından tüm herkese wp den mesajını yollarsın.