Veritabanı her gün güncelleyebilirsiniz cronjob / tetik

4 Cevap php

Benim programlama gibi benim veritabanı ve PHP gibi MYSQL kullanıyorum language.I geçerli sistem tarihi "PROJESİ" olarak adlandırılan "tarihini (tarih)" benim veritabanı tablosundaki sütun. Maçlar kadar devam edeceğini bir cron işi çalıştırmak istedim tarihleri ​​kez aynı güncelleştirme sorgusu "yakın" "açık" dan durumunu (proje tablo alanı) değiştirmek istiyorsunuz çalıştırmak zorundadır.

Ben cron işleri iyi yoldur ya da tetikler kullanabilir veya benim web sunucusu olarak Apache kullanıyorum ve benim işletim sistemi Windows Vista else.Also şey olabilir eğer gerçekten emin değilim.

4 Cevap

OS Vista ise, cronjob eşdeğer planlanmış bir görevdir. MySQL yüzden aynı şeyi bir PHP komut dosyası iyi bir seçimdir bir tarih değişikliği tetikleyici çalışan için bir tesis yok.

Yapmanız gereken tek şey (Control Panel > System And Maintenance > Administrative Tools > Schedule Task) scheduler açın ve yeni bir görev oluşturun.

PHP C:\PHP\ yüklü ve komut ise Örneğin, C:\htdocs\tasks\close_projects.php, aşağıdaki eylem ile bir görev oluşturmanız gerekir:

Action: Start a program
Program/script: C:\PHP\php.exe
Add arguments: close_projects.php
Start in: C:\htdocs\tasks\

Ihtiyaçlarınıza göre ayarlar geri kalanı ayarlayın. (Senin Örneğin, bir günlük görev kullanmak istiyorum).


Başka bir seçenek günün ilk istek üzerine görevi yapmaktır. Bu durumda her bir sayfa yük üzerinde çalışan bazı PHP kodu eklemeniz gerekir. Sadece son istek tarihini saklamak, ve mevcut talebi dün yapıldı ise, SQL deyimini çalıştırın.

Çünkü bazı Hostings üzerinde cron'nun eksikliği, bir keresinde "gecikmiş görevler" için sınıfları kümesi yazdı. Ben bazı görevler tam size specifify zaman çalıştırmak zorunda olmadığını fark, ancak bazı istemci sunucu istekleri ilk kez ertelendi olabilir.

Bu yardımcı umuyoruz - ZIP.

UPDATE project SET status='closed' WHERE deadline<=CURDATE();

Bu sorguyu çalıştırmak için zamanlanmış bir görevi kurma Önemsiz olmalıdır.

Eğer mySql hangi sürümü yayınlanıyor?

mySql beri zamansal tetikler destekler 5.1.6

http://dev.mysql.com/tech-resources/articles/event-feature.html

. K