• 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
تغییر فیلدی از جدول به طور خود کار
#1
سلام

من در جدول فیلدی از نوع date تعریف کردم که مقدار آن را کد PHP:
CURDATE()+7
قرار دادم یعنی 7 روز پس از زمان فعلی سیستم.
حالا می خواهم وقتی 7 روز بعد، زمان فعلی سیستم به زمانی که در فیلد بالا تعریف کردم رسید، سیستم به صورت خودکار فیلد دیگر جدول را تغییر دهد. چه طور می تونم این کار را انجام دهم؟
  پاسخ
تشکر شده توسط :
#2
برای این کار شما باید از یک cron job استفاده کنید.
و اون رو مثلا ساعت ۰۰:۰۰ هر روز اجرا کنید.

توی cPanel و Plesk دنبال گزینه‌ی Cron Job بگردید. برای آموزش Cron Job تو cPanel به http://www.drupalcms.ir/content/%D8%A2%D...%B1-cpanel و یا http://www.siteground.com/tutorials/cpan...n_jobs.htm رجوع کنید.
البته اگر هم شما تو سوالتون به جنبه‌ی CUR_DATE() + 7 اشاره داره، که باید بگم می‌تونید این کوئری رو بزنید:
کد پی‌اچ‌پی:
UPDATE `table_nameSET `date` = (`date` + 7WHERE `id` = '1'
البته حتما توجه دارید که فیلد date باید integer باشه یا به integer تبدیل بشه
upservers.net Profesional Internet Solutions
هاست + ریسلر لینوکس
خدا رو شکر این سروری که گرفتم Uptime نسبتا قابل قبولی داره.
  پاسخ
تشکر شده توسط : mkmk molana
#3
نیازی به Cron Job نیست
میتوانید از event ها در خود ما اس کیو ال استفاده کنید که مثل job ها در اس کیو ال سرور هست
اگر هم از Cron Job میخواهید استفاده کنید، در صورتی که با تنظیماتش مشکل دارید یا هاست شما ساپور نمیکنه میتونید از
http://www.setcronjob.com/ استفاده کنید
  پاسخ
تشکر شده توسط : smhnaji mkmk mohsened parvane molana
#4
(۱۳۸۹ دى ۱۹, ۰۷:۴۸ ب.ظ)bestirani2 نوشته: نیازی به Cron Job نیست
میتوانید از event ها در خود ما اس کیو ال استفاده کنید که مثل job ها در اس کیو ال سرور هست
اگر هم از Cron Job میخواهید استفاده کنید، در صورتی که با تنظیماتش مشکل دارید یا هاست شما ساپور نمیکنه میتونید از
http://www.setcronjob.com/ استفاده کنید
دست شما درد نکنه دوست عزیز، خیلی کار باحالی بود من نمی‌دونستم
این قابلیتی که شما گفتی از MySQL 5.1 اضافه شده.
http://dev.mysql.com/tech-resources/arti...vents.html

یه مثال که تو همین صفحه گفته:
کد پی‌اچ‌پی:
create event e on schedule every 1 second do
       
insert into test.t values (current_timestamp);


/*بعد از اون این کوئری رو می‌زنیم:*/
set global event_scheduler 1
و بعد از ۳ ثانیه می‌بینیم که ۳ تا row به جدول اضافه شده!
خیلی باحال بود

بازم ممنون Smile
upservers.net Profesional Internet Solutions
هاست + ریسلر لینوکس
خدا رو شکر این سروری که گرفتم Uptime نسبتا قابل قبولی داره.
  پاسخ
تشکر شده توسط : mkmk amir.s
#5
1) آیا لابلای query های mysql می توان دستور php نوشت؟
2) اگر بخواهیم در دستور event در mysql، بعد از do ،بخواهیم به جای insert ، update ....... یک دستور php رو در هر یک ساعت یکبار اجرا کنیم، مثلا بخواهیم در هر ساعت یک صفحه php باز بشه باید چه طور بنویسیم؟
  پاسخ
تشکر شده توسط :
#6
(۱۳۸۹ دى ۲۳, ۱۰:۵۶ ب.ظ)mkmk نوشته: 1) آیا لابلای query های mysql می توان دستور php نوشت؟
2) اگر بخواهیم در دستور event در mysql، بعد از do ،بخواهیم به جای insert ، update ....... یک دستور php رو در هر یک ساعت یکبار اجرا کنیم، مثلا بخواهیم در هر ساعت یک صفحه php باز بشه باید چه طور بنویسیم؟

چنین چیزی امکان پذیر نیست
برای این کار از همون cron job باید استفاده کنید
  پاسخ
تشکر شده توسط : mkmk molana mohsenkw


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان