سلام خسته نباشید ببخشید من میخواستم برای کد هام تاریخ انقضا درست کنم مثلاً این کد تا هفت روز دیگه کار میکنه بعد از هفت روز یک متنی رو نمایش بدم چطوری با php درستش کنم
اول از همه باید تاریخ روزی که درخواست داده میشه رو محاسبه و به اون عدد 604800 ( 7 روز رو بخوای به ثانیه تبدیل کنی این عدد میشه، هفت روز ضربدر 24 ساعت ضربدر 60 دقیقه ضربدر 60 ثانیه) اضافه کنی، و بعد این عدد (expireDate$) رو در دیتابیس ذخیره کنی:
متغیر registerDate یک عدد به ثانیه نمایش میده که این عدد میگه از تاریخ "January 1 1970 00:00:00 GMT" تا این لحظه چند ثانیه گذشته
$registerDate = date('U');
$expireDate = $registerDate + 604800;
و در هر صفحه ای که خواستی، ابتدا عددی که برای تاریخ انقضاء (expireDate$) ذخیره کردی رو فراخوانی کن و بعد با تاریخ لحظه مقایسه کن، اگر بیشتر شد پیغام خطا رو نمایش بده یا به یک صفحه دیگه ریدایرکتش کن:
$expireDate = .....
if ($expireDate < date('U')){
echo 'Error, ...';
}ممنون از اصلاح عنوان سوال.
شاید پاسخ شما همینجا باشد
قبل از شروع دیکد کد اول اون زمان رو چک کن اگه منقضی شده بود ریدایرکت کن به اون صفحه ای که می خوای
@Nima.nori
اره دقیقا میخوام همچین چیزی باشه
@milwad @Nima.nori
روش ساده و خوبی هستش، مطمئنا در خیلی موارد کاربردی خواهد بود.
اما اگه فرد تخصص داشته باشه، به سادگی کدهارو تغییر میده و باز هم اجراشون میکنه.
خب دیگه کل کار با if در میاد
اول مثلا سفارش که ثبت می کنی زمان اتمام اون سفارش رو توی دیتا بیس ذخیره کن
بعد موقع اجرای کد زمان حال حاضر سرور رو بگیر و ببین اگه زمان سیستم کوچیکتر بود یعنی هنوز منقضی نشده پس کد رو ادامه بده
ولی اگه زمان سیستم بزرگتر بود یعنی منقضی شده و کاربر باید به صفحه ای دیگه منتقل بشه
@Nima.nori
من اول میخواستم اینکار و کنم
تاریخ امروز و با عدد 7 جمع کنم و داخل متغیر بریزم
بعد اینکارو انجام بدم
<?php
$time = date('d');
$timeplus = '20';
if ($time <= $timeplus){
echo 'hello world';
}
?>
این کد من دوتا مشکل داره اولی اینکه که وقتی میخوام تاریخ الان رو با 7 جمع کنم عدد بیشتر از 30 روز میشه مثلا اگه امروز 28 باشه من میخوام کدهام هفت روز تاریخ داشته باشه تاریخ امروز و با 7 جمع میکنم و خروجیش میشه 35 که این نمیشه
مشکل دوم
وقتی از این کد استفاده میکنم پروژه دیگه قفل نمیشه یعنی اگه تاریخ 16 که امروزه این روی پروژه تاریخ انقضا با if درست کنم تا یک هفته کار میکنه ولی دوباره تاریخ 16 دوباره شورع میشه تا هفت روز دیگه و همین جوری
پیشنهادم اینه زمان رو به صورت timestamp استفاده کنین این مشکلات رو نداره