Sualım bir az qəribə və qəliz görünə bilər. Mən bunun üzərində təzəlikcə baş sındırmağa başlamışam. Sual budur: Crontab köməyi olmadan php-də təyin olunmuş vaxtda müəyyən bir əməliyyatı işə salmaq olarmı?
Məsələn, tutaq ki, mesaj qutularını təyin olunmuş vaxtda sistem özü təmizləsin. Dəyək ki saat 23:59 olsun bu teyin olunmuş vaxt. Mən bir-neçə variantlar yoxladım,amma istənilən halda brauzer aktiv olmalıdır və daim həmin səhifəni yeniləmək lazım gəlir. Əks halda kod təyin olunmuş vaxtda işə düşmür. Yəni fon rejimində işlətmək olmur.
Verilmiş cavablar və yazılan şərhlər (12 cavab var)
0
düşünürəm ki belə bir variant alınar.
məsələn sən 1 həftə əvvəl göndərilmiş mesajları silmək istəyirsən..
bazadan seçirsen 1 həftə əvvəl göndərilməş mesajları və səhifənin yuxarısında uyğun bir yerdə mysql sorğunu yerləşdirirsən.. daimi olaraq kimsə həmin səhifəni istifadə edən kimi həmin sorğu işə düşəcəkdir..
0
Ruslan Butdayev,təşəkkür, anladım. Bu mümkün versiyadır. Ancaq o halda ki, saytda istifadəçi çox olsun. Ən azı o sayda olsun ki, həmin saniyədə səhifəni kiminsə yeniləyəcəyi ehtimalı 100% olsun. Bəs istifadəçi az olarsa. Ümumiyyətlə fon rejimində bu mümkündürmü görəsən? Brazuerin müdaxiləsi olmadan.
0
Doğrusu mən inanmıram ki kənar müdaxilə olmadan kod özlüyünde hər hansı bir funksiya yerinə yetirsin.. Ancaq yenə də əmin deyiləm bəlkədə mümkündür mənim məlumatım yoxdur 🙂 ama məntiqi cəhətdən biraz qəbul olunmur məncə ))
0
Mene de maraqlidi bu movzu.Countdown vasitesile etmek olar bunu?Yeni men bele fikirlesirem ki jquery vasitesile etmek olar ama men de bacarmiram.Mene de lazimdi bele bir sey.
0
DML Trigger vasitesi ilə bunu etmək olmaz? Müəyyən vaxtlarda məslən 23:59 mesaj qutusundakı məlumatları saxlayan table-da bütün məlumatlar silinir. Bu mümkündür trigger vasitəsi ilə. Heç bir PHP-yə də ehtiyac qalmır
0
Bahruz Garamammadov, DDL və DML Trigger barədə çox az məlumatım var, yox dərəcəsindədir:) Geniş məlumat olan ünvan bilirsənsə qeyd edərsən zəhmət olmasa.
0
bu haqqda habr’da bir yazı oxumuşdum. bəlkə maraqlı olar habrahabr.ru/blogs/webdev/132609/
0
Test etməmişəm ancaq düşünürəm ki, etmək mümkündür. Sənə lazım olan tək bir şey kəsilməz işləyən skript yaratmaqdır buna set_time_limit(0) funksiyası ilə nail ola bilərsən. Bu skripti bir dəfə çağırdıqdan sonra kəsilməz olaraq işləyəcək və skriptdə sonsuz dövr yarat dövrün daxilində isə misal üçün 23:59 da test() funksiyasını çağırmaq üçün belə bir şey yaz bilərsən:
0
Elvin Əfəndi ,:) təşəkkür. Amma mənim indiki tələbimə görə bu üsul sistemi məhv edər)) Salamatı düz deyirsən crondur.
0
Fikir məntiqli görünür.. Mənə maraqlıdı bəs sonzsuz dövr problem yaratmayacaq server üçün? (yüklənmə kimi)
1
Daha yaxşı olar ki elə crontabdan istifadə edilsin bu məsələlər üçün, yadaki server dəstəkləyirsə orda job yaratmaq olar, yəni məncə PHP-də belə bir şey etməyə ehtiyyac yoxdu və effektsiz olacaq. Sonsuz dövrün problem yaradıb yaratmamağı daha çox dövrün daxilində nə yazılacağından asılıdır, yəni RAM-ı davamlı olaraq dolduracaqsa vəya hesablama zaman keçdikcə ağırlaşacaqsa problem yarana bilər əks halda isə normal işləyər.
0
Təşəkkür. Bu məqaləni düzü oxumuşdum. Elə bu problemi axtara-axtara gedib üstünə çıxdım. Amma düşündüm bəlkə daha sadə üsul tapmaq olar. Belə görünür ki, hələki bunu sınaqdan çıxarmaq olar. Nəticə yaxşı olsa bura yazacam:)
Sual verin
Cavab verin