(1399/2/20، 08:44 عصر)persiangamer نوشته است: (1399/2/20، 08:38 عصر)Master Badfar نوشته است: (1399/2/20، 08:25 عصر)persiangamer نوشته است:
بله حدستون درسته. به کمک دیتابیس و PHP میتونین مشخصات گروه ها (کلن ها) مختلف رو ذخیره کنین و برای هر کاربر یک شناسه یکتا تعیین کنین و تعیین کنین که هر گروه یا کلن شامل چه شناسه هایی هست.
البته میتونین از دیتابیس استفاده نکنین و اطلاعات رو در قالب یک فایل جیسون یا XML در سرور ذخیره کنین و بعد برای جلوگیری از خوانده شدن فایل جیسون یا XML ذخیره شده در سرور از طریق تنظیمات .htaccess ترتیبی بدین که فقط PHP قادر به خوانش فایل ها باشه. یا هم میتونین فایل های جیسون یا XML ذخیره شده رو رمزنگاری کنین.
بعد به طور مثال قبل از شروع بازی یا ورود به چت روم کاربر نام کلن رو وارد کنه و اگر جزء اون کلن یا گروه بود وارد بازی یا چت روم بشه. این موضوع هم با دستورات ساده دیتابیس و یا فایل در PHP به راحتی قابل پیاده سازیه.
موفق باشین.
ذخیره با جیسون برام جذابه
میشه یک مینی راهنمایی کنید ؟
راستش ذخیره با جیسون توی انجمن بارها بهش پرداخته شده؛
آقای ثنایی برای اولین مرتبه در
اینجا بهش اشاره کردن و به طریقه دریافتش در کانستراکت پرداختن.
حقیر هم درباره جیسون و استفاده از اون در PHP
اینجا صحبت کردم.
برای بحث رمزنگاری فایل جیسون میتونین به
این تاپیک که حقیر نوشتم مراجعه کنین.
برای محدود کردن دسترسی به یک فرمت فایل خاص از جانب کاربران (مثلاً فرمت .xml یا .json) میتونین از دستورات زیر توی فایل
.htaccess در دایرکتوری موردنظرتون استفاده کنین:
کد:
RewriteEngine On
rewritecond %{REQUEST_FILENAME} !^(.+).php$
RewriteRule ^(.+)$ // [nc]
در واقع در دستورات بالا بیان کردیم که فقط فایل های PHP توسط کاربر (یا درخواست AJAX) قابل اجرا هستن و فایلهای دیگه مثل فایلهای json یا xml تنها توسط PHP یا یک زبانی که روی سرور اجرا میشه در دسترس خواهند بود.
میتونین فایل
.htaccess رو در هر دایرکتوری (چه public_html و چه ...) ایجاد کنین. اگر به طور پیشفرض وجود نداشت یک فایل با نام
.htaccess ایجاد کنین و دستورات بالا رو در اون اعمال کنین.
برای جلوگیری از ایندکس شدن دایرکتوری (public_html یا ... ) هم میتونین دستورات زیر رو در فایل
.htaccess در ادامه دستورات بالا یا به تنهایی وارد کنین.
کد:
Options All -Indexes
ErrorDocument 403 "متن مورد نظر ارور"
اما اگر بخواین برای فایل جیسون ایده بگیرید میتونین به طور مثال برای هر کلن یک فایل جیسون در سرور داشته باشین.
به طور مثال فایل جیسون
doosti.json مشخصات کلن دوستی رو به ما نمایش میده:
کد:
{
"id": "a145BCK",
"status": "active",
"number_of_users": "3",
"admin": "parisa",
"user1": "reza",
"user2": "mahdi",
"user3": "parisa"
}
عبارت id بیانگر شناسه کلن، status بیانگر وضعیت باز یا مسدود بودن کلن، number_of_users بیانگر تعداد کاربران کلن، admin بیانگر ادمین کلن و هر یک از user ها هم بیانگر نام اعضا است.
البته میتونین از دیتابیس No SQL از نوع Document-Based به جای SQL استفاده کنین تا فایل جیسون رو بتونین در دیتابیس به راحتی ذخیره کنین.
موفق باشین.