-
عضو انجمن
تغییر اتوماتیک جدول دیتابیس بعد از زمان تعیین شده امکان پذیر است؟
با سلام
من میخوام یه جدول دیتابیس ایجاد کنم که اطلاعات کاربران، توسط خودشون توی اون وارد بشه
تقریبا به این شکل:
کد HTML:
ID NAME STATUS
1 Ali 0
2 Reza 0
3 Hossein 1
...
100 Mohammad 1
این جدول سه قسمت داره که اولی شماره هر کاربر هست. دومی نام هر کاربر و سومی وضعیت هر کاربر
پس از ثبت نام کاربر انتخاب میکنه که میخواد چند ماه عضو سایت باشه. بین ۱ تا ۱۲ ماه
مثلا اگه ۳ ماه رو انتخاب کرد، تا سه ماه STATUS عدد 1 باشه و بعد از 3 ماه صفر بشه. مگر اینکه دوباره تمدید کنه. همچنین میخوام مثلا ۱۰ روز قبل از 0 شدن هم یه ایمیل براش ارسال بشه که اون رو تمدید کنه
راه حل این کار چیه؟ راه حل بهتری واسه انجامش دارید؟
-
-
June 4th, 2019 15:23
# ADS
-
عضو انجمن
پاسخ : تغییر اتوماتیک جدول دیتابیس بعد از زمان تعیین شده امکان پذیر است؟

نوشته اصلی توسط
سیدرضا بازیار
با سلام
من میخوام یه جدول دیتابیس ایجاد کنم که اطلاعات کاربران، توسط خودشون توی اون وارد بشه
تقریبا به این شکل:
کد HTML:
ID NAME STATUS
1 Ali 0
2 Reza 0
3 Hossein 1
...
100 Mohammad 1
این جدول سه قسمت داره که اولی شماره هر کاربر هست. دومی نام هر کاربر و سومی وضعیت هر کاربر
پس از ثبت نام کاربر انتخاب میکنه که میخواد چند ماه عضو سایت باشه. بین ۱ تا ۱۲ ماه
مثلا اگه ۳ ماه رو انتخاب کرد، تا سه ماه STATUS عدد 1 باشه و بعد از 3 ماه صفر بشه. مگر اینکه دوباره تمدید کنه. همچنین میخوام مثلا ۱۰ روز قبل از 0 شدن هم یه ایمیل براش ارسال بشه که اون رو تمدید کنه
راه حل این کار چیه؟ راه حل بهتری واسه انجامش دارید؟
سلام وقت بخیر
شما ستون زمان به جدولت اضافه کن که زمان ثبت نامش مشخص باشه بعد زمان ثبت نام و حال رو مقایسه کن اگه منقضی شده باشه وضعیتش بشه صفر
برای ارسال ایمیل هم چون زمان ثبت نام رو داری خیلی راحت میتونی انجامش بدی
ویرایش توسط omid1991 : June 4th, 2019 در ساعت 17:35
-
تعداد تشکر ها از omid1991 به دلیل پست مفید
-
عضو انجمن
پاسخ : تغییر اتوماتیک جدول دیتابیس بعد از زمان تعیین شده امکان پذیر است؟

نوشته اصلی توسط
omid1991
سلام وقت بخیر
شما ستون زمان به جدولت اضافه کن که زمان ثبت نامش مشخص باشه بعد زمان ثبت نام و حال رو مقایسه کن اگه منقضی شده باشه وضعیتش بشه صفر
برای ارسال ایمیل هم چون زمان ثبت نام رو داری خیلی راحت میتونی انجامش بدی
یعنی ستون پنجم رو تاریخ ثبت نام بزارم و تعیین کنم که مثلا ۹۰ روز بعد از این تاریخ باطل بشه؟
میشه یکم بیشتر توضیح بدین؟
-
-
عضو انجمن
پاسخ : تغییر اتوماتیک جدول دیتابیس بعد از زمان تعیین شده امکان پذیر است؟

نوشته اصلی توسط
سیدرضا بازیار
یعنی ستون پنجم رو تاریخ ثبت نام بزارم و تعیین کنم که مثلا ۹۰ روز بعد از این تاریخ باطل بشه؟
میشه یکم بیشتر توضیح بدین؟
سلام وقت بخیر
بله
شما به دوتا ستون زمان نیاز دارید یکی زمان ثبت نام که مشخص میکنه کی ثبت نام کرده و یکی زمان انقضا
مثلا زمان انقضا امروز هست با کرون جاب چک میکنید اگه زمان انقضا از امروز کوچکتر باشه وضعیت رو به صفر تغییر بده و میتونید قبل از زمان انقضا هم پیام بفرستید که زمان شما به اتمام رسیده و ...
-
تعداد تشکر ها از omid1991 به دلیل پست مفید
-
عضو انجمن
پاسخ : تغییر اتوماتیک جدول دیتابیس بعد از زمان تعیین شده امکان پذیر است؟
حالا یه سوال:
تصویر زیر رو ببینید. یه جدول واسه تست ساختم که هر کاربر ثبت نام کنه توی قسمت date تاریخ اعتبار اکانت رو نمایش میده. حالا میخوام عملیات خرید اکانت و تمدید اکانت بر اساس زمان روی اون انجام بشه

من میخوام چک کنم که اگه جدول زمان تمدید زمانش تموم شده باشه و کاربر دوباره اکانت رو آپدیت کنه، ابتدا زمان رو روی امروز ست کنه و ۳۰ روز بهش اضافه کنه. در غیر این صورت اگه کاربر بخواد در حالی که هنوز هم زمان داره، زمان بخره ۳۰ روز به زمان فعلی اضافه بشه
توضیح کد زیر: اگه زمان موجد در جدول جلوتر از زمان فعلی باشه add date در غیر این صورت update date and add date
کد PHP:
select if (date >= now() , 'add date' , 'update date and add date') from links;
حالا توی شرط اول کد زیر باید اجرا بشه:
کد PHP:
date=adddate(date,30)
توی شرط دوم کد زیر باید اجرا بشه:
کد PHP:
date=adddate(now(),30)
واسه آپدیت هم از این کد استفاده میشه:
کد PHP:
update links set date=adddate(now(),30) where id=1
وقتی این کد ها رو توی هم میزنم و اجرا میکنم، با ارور مواجه میشم:
کد:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'update links set date=now()) from links where id=1' at line 1
چطوری این کد ها رو باید اجرا کنم که بتونم به نتیجه ای که میخوام برسم؟
ویرایش توسط سیدرضا بازیار : June 7th, 2019 در ساعت 21:20
دلیل: افزدون عکس
-