PDA

View Full Version : سوال: کمک برای حذف مطلب در یک بازه ی زمانی خاص



mamali-mohammad
شنبه 15 مرداد 1390, 00:35 صبح
سلام
خوبید ؟
دوستان من میخوام مثلا یه مطلب بعد از 30 روز ( پس از وارد شدن به دیتابیس ) از دیتابیس حذف بشه
باید چه کنم ؟
ممنون

mamali-mohammad
شنبه 15 مرداد 1390, 12:57 عصر
کسی هست کمک کنه ؟

BehinAfzar
شنبه 15 مرداد 1390, 13:08 عصر
سلام
شما میتونید در هر صفحه از سایت یک فایل php رو اضافه کنین که توی اون فایل چک میکنین ابتدا همه مطالبی که تاریخ انقضای اونها گذشته رو پاک میکنین به بقیه کار ها رو انجام بدین
موفق باشی

<body>
شنبه 15 مرداد 1390, 13:19 عصر
سلام

شما به راحتی میتونید از CronJob استفاده کنید

کافیه یک فایل php که دارای اطلاعات برسی زمان رکرد از تیبل مورد نظر است رو با یک شرت کوچک باشه رو به CronJob بدی تا در هر مثلا 24 ساعت یک بار برسی کنه و اون چیزی رو که میخوای واست انجام بده

به همین راحتی :چشمک:

mamali-mohammad
شنبه 15 مرداد 1390, 16:59 عصر
ممنون
این فایل رو می تونید بدید ؟
ممنون

mr.zenith
شنبه 15 مرداد 1390, 22:26 عصر
سلام
cornjob هم نخواستید مثل cms ها وقتی index را شما میزنید در واقع یکسری سیستم و تابع و غیره لود میشه می توانید توی این مابین کد خود را هم لود کنید.

mamali-mohammad
شنبه 15 مرداد 1390, 23:13 عصر
خب کد رور بدید
اون کدی که اینکارو میکنه رو بدید
ممنون

<body>
یک شنبه 16 مرداد 1390, 10:57 صبح
سلام
این کد رو یه تست بگیرید باید مشکلتون رو حل کنه

میتونید به دو روش استفاده کنید
1. Cron Job
2. روشی که دوست عزیز mr.zenith گفتن




# $date Hamoon tarikhe rooz hast
# $post_date Tarikhi hast ke baraye hazfe post morede nazar tarif mikonid

$result = mysql_query("SELECT * FROM TABLE");
while($r=mysql_fetch_array($result))
{
$id=$r["id"];
$post_date=$r["post_date"];
if($post_date == $date)
{
$query = "DELETE FROM TABLE WHERE id = '$id'";
mysql_query($query);
}
}



موفق باشید

mamali-mohammad
یک شنبه 16 مرداد 1390, 11:29 صبح
سلام
اینو میشه مستفیم توی ایندکس کار کرد
میشه cronjob هم راهنمایی کنید ؟

<body>
یک شنبه 16 مرداد 1390, 11:52 صبح
سلام
همین کد رو داخل Index بگزارید به راحتی باید کار کنه وبرای اینکه با Cron Job کار کنه باید در یک فایل php با اطلاعات دیتابیس زخیره کنید و از پنل هاستینگ خود در قسمت cronjobs آدرس دهی کنید و زمان اجرا رو تنظیم کنید .

البته بیشتر هاست ها دارند و اگه چنین امکانی نداشتید با پشتیبان هاست خود تماس بگیرید
موفق باشید

mamali-mohammad
یک شنبه 16 مرداد 1390, 16:30 عصر
برای index یه مشکلی هست
شاید تا 3-4 روز کسی ایندکس رو باز نکرد
در نتیجه کد انجام نمیشه

از طرفی هم دوست دارم مدل cron job رو یاد بگیرم
ممنون میشم کمک کنید

<body>
دوشنبه 17 مرداد 1390, 10:46 صبح
سلام

بله دقیقا حق با شماس واسه همین راه cron job رو پیشنهاد دادم
اون روشی که در پست قبلی گفتم رو تست کردین ؟

یه تست بگیر اگه مشکلی بود درخدمتیم .

mamali-mohammad
دوشنبه 17 مرداد 1390, 12:19 عصر
شما الان می تونید دقیقا cronjob رو توضیح بدید ؟
و اگه کدی داره بزارید ؟
ممنون

<body>
دوشنبه 17 مرداد 1390, 13:24 عصر
سلام

cron job یه امکانی هست که پنل هاست در اختیار شما قرار میده و برای استفاده از اون باید وارد پنل هاست خود شوید و به دنبال بخشی به نام cronjobs بگرد
وارد اون بخش که شدی چند قسمت داره
یه قسمت واسه ایمیل که گزارش اجرای فایل رو ارسال میکنه
یه قسمت واسه تعین زمان اجرا
و قسمتی که در CPanel به نام command هست مسیر فایلی که میخواهید اجرا بشه
مثلا

php -q /home/USERHOST/public_html/killer.php

فایل killer.php همون فایلی هست که اون کدی رو که بهتون دادم رو داخلش قرار میدی و در پ/شه public_html ذخیره میکنی

و کار تمام امید وارم که مفید باشه
اگه مشکلی بود درخدمتیم:چشمک: