راهنمائی برای نوشتن سیستم آگهی

mona.joon

Member
سلام
من میخوام یه سیستم آگهی بنوسم مثل ایستگاه
الان ثبت نام و لاگین و کامل نوشتم ولی از این به بعد شو نمیدونم چجوری باید بنویسم
اگر میشه راهنمائی کنید
هم برای طراحی دیتابیس و هم خود سایت
یه سئوال دیگه هم داشتم
من لاگین و نوشتم ولی برای ادمین هیچی تعریف نکردم! چجوری باید برای ادمین مجوز دسترسی تریف کنم که مثلا بتونه از پروفایل یوزر ها یه چیزی پاک کنه یا ویرایش کنه
مرسی:rose:
 

felix

Member
میتونی برای ادمین یه صفحه مجزا تعریف کنی یا مثلا تو همون صفحه کاربر های عادی یه شرط بزاری که اگه یوزر ادمین بود این قسمت صفحه (مثلا تغیراات) رو نشون بده بعد در باره جدول ها هم من زیاد حرفه ای نیستم اما میتونی یه جدول برای کاربر شامل مشخصات کاربر با یوزر پس درست کنی بعد مثالا توی صفحه ادمین بگی این یوزر رو درست کن یا پاک کن یا آپدیت کن
 

mona.joon

Member
میتونی برای ادمین یه صفحه مجزا تعریف کنی یا مثلا تو همون صفحه کاربر های عادی یه شرط بزاری که اگه یوزر ادمین بود این قسمت صفحه (مثلا تغیراات) رو نشون بده بعد در باره جدول ها هم من زیاد حرفه ای نیستم اما میتونی یه جدول برای کاربر شامل مشخصات کاربر با یوزر پس درست کنی بعد مثالا توی صفحه ادمین بگی این یوزر رو درست کن یا پاک کن یا آپدیت کن
مرسی از پاسختون:rose:
طراحی دیتابیس برای یوزر هارو انجام دادم که 5تا فیلد داره (آیدی -یوزر-پسورد-ایمیل-تاریخ)
ولی برای از اینجا به بعدشو نمیدونم چجوری باید طراحی کنم؟؟ مثلا برای ثبت آگهی
 

felix

Member
مرسی از پاسختون:rose:
طراحی دیتابیس برای یوزر هارو انجام دادم که 5تا فیلد داره (آیدی -یوزر-پسورد-ایمیل-تاریخ)
ولی برای از اینجا به بعدشو نمیدونم چجوری باید طراحی کنم؟؟ مثلا برای ثبت آگهی

خب من زیاد به این سیستم آگهی آشنایی ندارم اگه قراره فقط آگهی ها رو نشون بده که کافیه یه جدول درست کنی (این روش های من ساده است و بهینه نیست) که مثلا ایدی هر آگهی عنوان آگهی احتمالا عکس و متن آگهی بعد تو قسمت ادمین این فیلد ها رو دریافت کن در صفحه اصلی هم نمایش بده
 

Milad

Well-Known Member
برای ادمین میتونی یک جدول جدا توی دیتابیس تعریف کنی و یک صفحه لوگین مجزا که یوزر و پسورد رو از اون جدول چک کنی در صورت درست بودن کاربر ( ادمین ) رو هدایت کنی به صفحه مدیریت ، روش دیگه این هست که توی همون جدولی که برای کاربر ها ساختی یک فیلد بزاری برای مثال به اسم permission و توی اون اگر کاربر مدیر بود عدد 1 رو ذخیره کنی در غیر این صورت عدد صفر و موقع لوگین چک کنی اگر 1 بود کاربر رو بفرستی صفحه مدیریت ... ، اگر بخوای خیلی گسترده بنویسی بهتره از روش اول استفاده کنی با ترکیب روش دوم ! یعنی امکان تعریف چند نوع مدیر رو تعریف کنی مثلا 1 بود ، ارسال کننده ، 2 بود ویرایشگر آگهی ها ، 3 مدیر ، 4 مدیر کل و به هر کدوم دسترسی های لازمه رو بدی ...

باید ببینی چه امکاناتی لازم داری بعد برای هر قسمت یک جدول طراحی کنی ، مثلا جدول مدیریت : توش مشخصات و دسترسی مدیر ها ذخیره بشه ، جدول کاربر ها : مشخصات کاربر ها ، اینکه عضو رایگان هستند یا حق اشتراک دادن ، چقدر شارژ توی حسابشون هست ، جدول آگهی ها : ارسال کننده آگهی ، مشخصات ارسال کننده ، مدت زمان نمایش یا تعداد دفعات نمایش ، تعداد کلیک روی تبلیغات و ...

باید ببینی چی میخوای ! موفق باشی ...
 

mona.joon

Member
مرسی از توجه تون:rose:
برای ادمین میتونی یک جدول جدا توی دیتابیس تعریف کنی و یک صفحه لوگین مجزا که یوزر و پسورد رو از اون جدول چک کنی در صورت درست بودن کاربر ( ادمین ) رو هدایت کنی به صفحه مدیریت ، روش دیگه این هست که توی همون جدولی که برای کاربر ها ساختی یک فیلد بزاری برای مثال به اسم permission و توی اون اگر کاربر مدیر بود عدد 1 رو ذخیره کنی در غیر این صورت عدد صفر و موقع لوگین چک کنی اگر 1 بود کاربر رو بفرستی صفحه مدیریت ... ، اگر بخوای خیلی گسترده بنویسی بهتره از روش اول استفاده کنی با ترکیب روش دوم ! یعنی امکان تعریف چند نوع مدیر رو تعریف کنی مثلا 1 بود ، ارسال کننده ، 2 بود ویرایشگر آگهی ها ، 3 مدیر ، 4 مدیر کل و به هر کدوم دسترسی های لازمه رو بدی ...
اون چیزی که دقیقا من میخوام اینه که مدیر بتونه بره تو پنل یوزر ها بگرده و انجا امکاناتی بیشتر از یوزر ها داشته باشه مثل دیدن آیپی هاشون یا ویرایش آگهی ها
یه دونه مدیر هم بیشتر نداره فکر کنم روش اول که گفتین کافی باشه
باید ببینی چه امکاناتی لازم داری بعد برای هر قسمت یک جدول طراحی کنی ، مثلا جدول مدیریت : توش مشخصات و دسترسی مدیر ها ذخیره بشه ، جدول کاربر ها : مشخصات کاربر ها ، اینکه عضو رایگان هستند یا حق اشتراک دادن ، چقدر شارژ توی حسابشون هست ، جدول آگهی ها : ارسال کننده آگهی ، مشخصات ارسال کننده ، مدت زمان نمایش یا تعداد دفعات نمایش ، تعداد کلیک روی تبلیغات و ...

باید ببینی چی میخوای ! موفق باشی ...
برای شارژ فکر کنم برای هر آگهی که میخواد ثبت بشه همون موقع نوع آگهی(پولی بودن یا رایگان بودنش)مشخص بشه بهتره. عضویت کاربران رایگانه (این قسمتشو نوشتم )
تعیین مدت زمان آگهی هم نمیدونم چجوری باید تعیین کنم؟!! یه تابع تاریخ شمسی درست کردم که هر جا فراخوانی بشه تاریخ همون روز و نمایش میده ولی نمیدونم برای مدت یه ماه یا 2 هفته چجوری باید عمل کنم ؟؟:-?
 

Milad

Well-Known Member
اون چیزی که دقیقا من میخوام اینه که مدیر بتونه بره تو پنل یوزر ها بگرده و انجا امکاناتی بیشتر از یوزر ها داشته باشه مثل دیدن آیپی هاشون یا ویرایش آگهی ها یه دونه مدیر هم بیشتر نداره فکر کنم روش اول که گفتین کافی باشه

این دیگه به کدنویسی ربط داره همه چیز رو مینویسی و موقع نمایش موارد خاص مثل ip چک میکنی اگر کاربر دسترسی مدیر داشت نمایش میدی در غیر این صورت ...

برای مدت زمان هم ساده ترین روش اینه : موقع ثبت آگهی تاریخ رو تو یه فیلد ذخیره کن ؛ موقع نمایش آگهی ها چک کن چند روز از ایجادش گذشته اگر مدتش تموم شده بود غیرفعالش کن یا کلا حذفش کن .
 

mona.joon

Member
برای مدت زمان هم ساده ترین روش اینه : موقع ثبت آگهی تاریخ رو تو یه فیلد ذخیره کن ؛ موقع نمایش آگهی ها چک کن چند روز از ایجادش گذشته اگر مدتش تموم شده بود غیرفعالش کن یا کلا حذفش کن .
اگر تاریخ ثبت آگهی رو در تیبل ثبت کنم و مدت اعتبار آگهی رو هم بزارم مثلا 1ماه (30) . چطور میتونم این 2 تا رو از هم کم کنم؟
اگر میشه یه مثال بزنید
مرسی
 

Milad

Well-Known Member
راحت ترین کار این هست که تاریخ انقضا رو ذخیره کنی اینجوری برات خیلی راحت تر میشه !

اون موقع به یک دید دیگه اون روش روگفتم ، راه زیاده ، مثلا یک راه خیلی ساده برای وقتی که میخوای روی تعداد روزها کار کنی یعنی موقع ثبت آگهی درج کنی مثلا 10 روز دیگه این آگهی تموم بشه این هست که با استفاده از تابع تایم تعداد روز هایی که از سال 1970 تا الان گذشته رو در بیاری و ذخیره کنی و در هر بار نمایش آگهی ها چک کنی ببینی تو روز جاری چند روز از 1970 گذشته و بعد این عدد رو که به دست میاد از عدد قبلی که ثبت کردی کم کنی و اگر 10 شده بود آگهی رو متوقف کنی !

ساده ترین روش برای کار روی تاریخ رو هم که تو خط اول گفتم ، البته روش های بهتری هم باید باشه که فعلا به ذهنم نمیرسه :green: ( مشغوله )
 
آخرین ویرایش:

Masoud1365

مدیر انجمن
یه تیکه کد میخواد که آگهی هایی که 10 روز گذشته رو بگیره !
PHP:
SELECT * FROM `table` WHERE `date` < 'date in timestamp' ORDER BY `id`
حالا اگر cpanel داری با cron job تعریف کن که این کد هر روز فلان سایت اجرا بشه و مقادیر برگشتی از این کوئری رو یا پاک کنه یا غیر فعال !
البته در تاپیک مشابهی که ایجاد کرده بودید هم گفتم که باید قبل از راه اندازی کامل تحلیل بشه !
http://forum.majidonline.com/showpost.php?p=1037639&postcount=5
 
آخرین ویرایش:

Masoud1365

مدیر انجمن
راحت ترین کار این هست که تاریخ انقضا رو ذخیره کنی اینجوری برات خیلی راحت تر میشه !

اون موقع به یک دید دیگه اون روش روگفتم ، راه زیاده ، مثلا یک راه خیلی ساده برای وقتی که میخوای روی تعداد روزها کار کنی یعنی موقع ثبت آگهی درج کنی مثلا 10 روز دیگه این آگهی تموم بشه این هست که با استفاده از تابع تایم تعداد روز هایی که از سال 1970 تا الان گذشته رو در بیاری و ذخیره کنی و در هر بار نمایش آگهی ها چک کنی ببینی تو روز جاری چند روز از 1970 گذشته و بعد این عدد رو که به دست میاد از عدد قبلی که ثبت کردی کم کنی و اگر 10 شده بود آگهی رو متوقف کنی !

ساده ترین روش برای کار روی تاریخ رو هم که تو خط اول گفتم ، البته روش های بهتری هم باید باشه که فعلا به ذهنم نمیرسه :green: ( مشغوله )

دقیقا برای تاریخ باید از این روش استفاده کنید ! البته تابع mktime یا ... تاریخ رو بر اساس ثانیه های گذشته شده از ژانویه 1970 به بعد میاد حساب میکنه !
تعداد ثانیه در یک روز میشه 86400 که برای 10 روز میشه 86400 × 10 بعدش این مقدار رو باید از تاریخ مثلا امروز کم کنید تا تاریخ 10 روز پیش به دست بیاد.
موفق باشید
 

جدیدترین ارسال ها

بالا