PDA

View Full Version : حرفه ای: نصب نرم افزار روی هاست و ارتباط آن با php و mysql



hamed_naghdi
جمعه 19 مهر 1392, 22:01 عصر
سلام
یک سوالی داشتم از اساتید که انقدر گنگ هست که خودم هم موندم چه‌جوری بگم.

ببینید فرض کنید که یک سایت داریم می‌سازیم که کاربرها باید توش عضو بشن تا بتونن روش فعالیت کنن.

حالا در نظر بگیرین که یه کاربر مثل user1 ، براش یه جدول توی یه دیتابیس درست کردیم و یکی از فیلدهاش به فرض باشه :

level
که از نوع عدد طبیعی هست.
من می‌خوام یه قابلیت برای user1 بذارم که بتونه مثلاً ۲ ساعت بعد این مقدار رو عوض کنه (مثلاً با اجکس) ، منظورم اینه که یه دکمه‌ای چیزی بذارم برای کاربر که وقتی روش کلیک می‌کنه مثلاً مقدار level رو ۵ واحد بالا ببره ولی ۲ ساعت بعد.
از طرفی یه کاربر دیگه به اسم user2 این قابلیت رو داشته باشه که برای مثال قبل از اینکه این ۲ ساعت تموم بشه بتونه به فرض ۲ واحد اون رو پایین بیاره یا اصلاً بعد از اون ۲ ساعت اون رو پایین بیاره (اینش خیلی وابسته نیست)
مشکل اینجاست که اگه user1 قبل از اون ۲ ساعت از صفحه خارج بشه سمت سرور کاری صورت نمی‌گیره و در این زمان هنگامی که user2 وارد بشه و بخواد اون مقدار رو کم کنه از مقدار اولیه کم می‌شه.
البته این موضوع خیلی گستردگی داره و بنده فقط یک بخش خاص اون رو بیان کردم و هدفم یه برنامه نویسی کوچولو برای این مورد خاص نیست چون راهش رو بلدم. ولی از اونجایی که تعداد عملیاتی که رخ می‌ده خیلی بالاست و از طرفی ممکنه سرور ساپورت نکنه بنده یه راه به ذهنم رسید و اون اینکه یک صف رخداد درست کنم که بترتیب اجرا بشه و تا اولی اجرا نشه سراغ دومی نره.

ولی هدفم از ایجاد این تاپیک این بود که آیا می‌شه یه نرم افزار روی سرور هاست نصب کرد که وقتی کاربر از صفحه خارج می‌شه نرم افزار سر زمان مورد نظر کار مربوطه رو انجام بده؟

در کل آیا می‌توان نرم افزاری روی سرور هاست نصب کرد که یک سری فعالیت‌های اتوماتیک انجام بده؟

اگه هست و می‌شه یا راه خوبی سراغ دارین خواهشاً به بنده هم بگید که واقعاً خیلی گیر این موضوع هستم.

با تشکر از همه‌ی اساتید.

mbf5923
جمعه 19 مهر 1392, 22:45 عصر
1-از قابلیت زمانبند یا Scheduler در mysql میتونید استفاده کنید که خودش طبق یه زمان خاص کار خواسته شده رو انجام بده
2- میتونید از crone job استفاده کنید
3- میتونید در ورود هر کاربر یه تابع رو صدا بزنید که آپدیت اطلاعات تمامی کاربران رو در بکگراند انجام بده

hamed_naghdi
شنبه 20 مهر 1392, 00:03 صبح
دوست عزیز از پاسخ‌تون ممنون
من همونطور که گفتم همون مورد سومی رو که شما گفتید رو مد نظر داشتم.
ولی دنبال یه چیز بهتر می‌گشتم و از خاصیت برنامه‌ریزی یا همون Scheduler در mysql اطلاعی نداشتم که می‌گردم پیدا می‌کنم.
ولی اگه یه لطفی کنید در موردن crone job یه توضیحی بدین ممنون می‌شم ، البته سعی می‌کنم خودمم هم یک سری اطلاعات کسب کنم.
با تشکر از توجه‌تان.

mbf5923
شنبه 20 مهر 1392, 12:24 عصر
در cron job هاست لینوکس یا Scheduler در هاست های ویندوزی شما میتونید یک دستور و یا یک فایل رو به زمانبند معرفی کنید تا در بازه های زمانی تعیین شده اون رو به صورت خودکار فراخوانی کنه
برای اینکار بهتره دستورات موردنظرتون رو دریک فایل بنویسید و آدرس اون رو در زمنبند وارد کنید و بازه زمانی مورد نظرتون رو هم وارد کنید به این ترتیب به طور اتوماتیک فایل مورد نظر شما در بازه های زمانی مشخص شده اجرا خواهد شد

hamed_naghdi
شنبه 20 مهر 1392, 13:00 عصر
واقعاً از راهمایی‌شما متشکرم