حالا یه سوال:
تصویر زیر رو ببینید. یه جدول واسه تست ساختم که هر کاربر ثبت نام کنه توی قسمت 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
چطوری این کد ها رو باید اجرا کنم که بتونم به نتیجه ای که میخوام برسم؟