Ben aşağıdakileri yapmak için en şık ve güvenli bir yöntem arıyorum.
Ben bir takvim var ve kullanıcı grupları.
Kullanıcılar, takvim üzerinde belirli günlerinde etkinlikler eklemek ve her olay için ne kadar sürer uzun belirleyebilirsiniz.
Onları belirli bir uzunlukta olayları belli bir miktar, bir mola dahil, ya da zaman belli bir miktar olaylar arasında bırakılması gerektiren tanımlamak için yeteneği eklemek için kullanıcıların birkaç istekleri yaşadım.
Etkinlik> 2 saat, örneğin, bir 20 ara bulunmaktadır. her olay için, 30 dakika sonraki olayın başlamasından önce gerektirir.
20 dakika mola dahil etmek> 2 saatlik bir olay için istedi Aynı grup, ayrıca bir olay> 3 saat 30 dakikalık bir mola içerdiğini gerektirebilir.
Sonunda, ne kullanıcıların almak için çalışıyoruz onlar için hesaplanan molaları hariç bir geçen zaman. Şu anda onlara bir toplam geçen zaman vermek, ancak bir süre çalışan arıyoruz.
Ancak, bu istekleri her biri, her bir grup için farklıdır. Bir grup 2 saatlik bir olay sırasında bir 30 dakika mola isteyebilir, ve başka her 3 saat olay için sadece 10 dakika istiyorum nerede.
Ben biraz ben, grup başına bir php dosyasına fonksiyonları yazmak ve sonra bu dosyayı içerir ve php üzerinden hesaplamalar yapmak ve sonra kullanıcıya bir hesaplanan toplam iade düşünüyordum, ama bu konuda bir şey bana doğru görmüyor.
Başka bir seçenek çıktı javascript gruplar fonksiyonları, ve ben zaten olayın süresini iade ediyorum gibi, istemci tarafında çalışacak, ancak kullanıcı farklı kurallara sahip birden fazla grubun bir parçası olduğu, bu böyle görünüyor oldukça dağınık alabilir.
Bir grup kendi hesaplamaları değiştirmeye karar verirse, ben gerekir çünkü ben şu anda, veritabanında başlangıç ve bitiş zamanı saklamak, ama hayır 'süreleri', ve ben db hesaplanan toplamları saklanması gerektiğini sanmıyorum db boyunca bunu değiştirin.
Is there a better way of doing this? I would just store the variables in mysql, but I don't see how I can then say to mysql to calculate based on those variables.
Ben gerçekten burada kayboldum. Herhangi bir öneriniz? Birinin benzer bir şey yapmış ve iyi yönde bazı bilgiler sağlayabilir umuyorum.
Bu yardımcı olur, benim tablo içerir
eventid, user, group, startDate, startTime, endDate, endTime, type
Ben kullanıcıya dönmek olay için json olduğunu
{"eventid":"'.$eventId.'", "user":"'.$userId.'","group":"'.$groupId.'","type":"'.$type.'","startDate":".$startDate.'","startTime":"'.$startTime.'","endDate":"'.$endDate.'","endTime":"'.$endTime.'","durationLength":"'.$duration.'", "durationHrs":"'.$durationHrs.'"}
Örneğin, süresinin uzunluğu 2.5 ve süresi saat 02:30 olduğu.