حذف کاربر از پرتال

amozesh

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

sunrise

Member
البته اون چيزي که معمول هست، در هيچ وب سايتي کاربر حق اينکه يوزر خودش رو بطور کامل حذف کنه نداره، اما در مجموع براي حذف اکانت کاربري، مي تونيد چند راه اتخاد کنيد:

1- نام هاي کاربري رو علاوه بر اينکه با شناسه به يک پست نسبت مي دهيد، با خود عنوان کاربري هم نسبت بديد، يعني يک فيلد هم تحت عنوان مثلا clear_username در نظر بگيريد. هنگام نمايش دادن نوشته هاي کاربر، اگر شناسه کاربر وجود داشت که به صفحه پروفايل کاربري حالت لينک پيدا مي کنه، در غير اين صورت از اون يکي فيلد يعني clear_username بصورت يک متن ساده استفاده ميشه.

2- مي تونيد با استفاده از دستورات SQL (پرس و جو) مناسب تمامي موضوع هايي که توسط اون شخص باز شده حذف بشه و همينطور پست هاي اون کاربر. اگه موضوع توسط اون کاربر ايجاد شده باشه، مي بايست تمامي نوشته هايي که تحت تأثير اون تاپيک بودند نيز به طبع حذف بشه که خب با آشنايي که از دستورات SQL داريد براحتي اين کار قابل انجام هست.

3- اگه واقعا ضرورت داره که يوزر بتونه خودش، خودشو حذف کنه و شما نمي خواهيد خودتون رو زياد به زحمت بياندازيد در ساده ترين حالت ممکن اين هست که شرطي بذاريد، در صورتي که مثلا کاربر هيچ نوشته اي نداشته باشه در يک دوره زماني خاص بتونه اکانت خودش رو حذف کنه.
 

amozesh

Member
البته من هم این امکان رو به مدیر سایت دادم.
ولی در هر صورت بعد از حذف کاربر اطلاعات تایپیک هایی که وارد کرده باید تکلیفش مشخص بشه.
در مورد اینکه به کاربر هم امکان حذف ندیم من مخالفم چرا که همون طور که کاربر با میل خودش ثبت نام کرده باید حق انصراف رو هم بهش داد.
حالا توی خود این vBulletin به چه صورت عمل شده مدیر که کاربر رو حذف کنه چه اتفاقی میفته تایپیک هاش حذف میشه؟
 

sunrise

Member
البته من هم این امکان رو به مدیر سایت دادم.
ولی در هر صورت بعد از حذف کاربر اطلاعات تایپیک هایی که وارد کرده باید تکلیفش مشخص بشه.
در مورد اینکه به کاربر هم امکان حذف ندیم من مخالفم چرا که همون طور که کاربر با میل خودش ثبت نام کرده باید حق انصراف رو هم بهش داد.
حالا توی خود این vBulletin به چه صورت عمل شده مدیر که کاربر رو حذف کنه چه اتفاقی میفته تایپیک هاش حذف میشه؟
در vBulletin از روش اول که خدمتتون گفتم پيروي مي کنه و هر پستي که مربوط به کاربر حذف شده باشه، نام کاربري رو بصورت يک متن ساده نمايش ميده و بعنوان مهمان (Guest) شناسايي مي کنه.
 

maxpelank

Active Member
با سلام

ساده ترین راه همونی هست که اقایsunrise ذکر کردند .

راه دوم :
برای فرد در تیبل یوزر ها یک فیلد به نام active_user ایجاد کنید که هم مدیر بتواند به دادن مقدار 0 و 1 به ان غیر فعال سازی و فعال سازی اکانت یوزر مربوطه را داشته باشد .
سپس زمانی که کار بر اکانت خود را غیر فعال می کنید این فیلد از جدول اطلاعات یوزر مربوطه به مقدار 0 تغییر می یابد .

حال در قسمت پست ها شما زمانی که پست ها رو می خونی باید این گزینه را چک کنی که اگر کاربر فعال باشد یعنی active_user برابر 1 بود پست را با نامن کامل و مشخصات نمایش بدهد.
اگر مقدار 0 داشت پست را با متن کامل ولی با تغییر در مشخصات نمایش دهد به طور مثال پستی که فرد حذف شده دارد به صورت زیر باشد :

"""""
این یوزر از ادامه همکاری با سایت انصراف داده است . نام کاربری : mytest
متن کامل پست ......

"""
امید وارم متوجه شده باشید .

موفق باشید
محمد
 

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

بالا