نمایش نتایج 1 تا 16 از 16

نام تاپیک: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

  1. #1

    آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    من یه فرم دارم که فیلدهای زیادی داره. (حدود 70 فیلد)

    اگه بخوام همه فیلدهای فرم رو توی یه جدول ذخیره کنم تعداد فیلدهای جدول زیاد می شه.

    لطفا در این مورد راهنمایی کنید که چه کاری بهتره؟

    1- اطلاعات رو توی چند جدول ذخیره کنم؟

    2-فیلدهایی که نیاز به جستجو و ایندکس شدن ندارن رو با سریالیز کردن، توی یه فیلد از جدول استفاده کنم؟
    با سریالیز کردن می شه 50-60 تا از فیلدهای فرم رو توی یکی از فیلدهای جدول ذخیره کنم.

  2. #2

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    تا جایی که بررسی کردم، سیستمهایی مثل vBulletin و... از Serialize برای این کار استفاده میکنن و خیلی خوب جواب میده. البته درمورد مقادیر فارسی فکر میکنم کمی باید بحث Serialization رو باید با دقت بکار گرفت و قبلش باید مطمئن بشین درست تبدیل میشه و موقع Unserialization هم به درستی به حالت قبل برمیگرده. موفق باشید.

  3. #3

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    مهندس ظارهار برای مشکل کاراکترهای فارسی قبل از سریالیز کردن باید از base64 استفاده کنیم که دیگه مشکلی پیش نیاد و سریالیز به خوبی انجام بشه. نظر شما در این مورد چیه؟

    آیا این روش روی سرعت تاثیری منفی ایجاد می کنه؟

    من شنیدم که توی این روش اگر از base64 استفاده کنیم دیگه لازم نیست نگران sql injection باشیم و sql injection خنثی می شه. آیا این موضوع رو تایید می کنید؟

  4. #4

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    راستش فکر نمیکنم مشکل خاصی توی سرعت پیش بیاد چون base64 الگوریتم سریعی هست. درمورد SQL Injection هم درسته چون اطلاعات بصورت کدهای نامفهوم در میاد و خروجی base64 ازنظر SQL معنایی نداره.

  5. #5

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    با توجه به بررسی هایی که انجام دادید، vBulletin توی کدوم بخش خودش از این روش استفاده کرده؟

  6. #6

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    راستش چون بیشتر روی بخش ماژول نویسیش کار میکردم، اونجا خیلی زیاد به چشمم خورد. بخصوص توی بخش API پرداخت آنلاین زیاد این مورد رو دیدم. بطور کلی توی بخشهای مرتبط با پلاگین از اونجا که همه پلاگینها توی یک جدول واحد قرار میگیرن و هر پلاگین هم ممکنه تعداد متفاوتی از پارامترها رو لازم داشته باشه و این جدول هم نمیتونه تعداد فیلدهاش شناور باشه و باید یک عدد ثابت باشه، کلاً برای تنظیمات پلاگینها یک فیلد گذاشته و تمام خصوصیات توش Serialize میشن و پلاگین هم موقع نیازش خصوصیاتش رو با Unserialize کردن فیلد مربوط به رکورد خودش، استخراج میکنه و بصورت آرایه در میاره.

  7. #7
    کاربر دائمی
    تاریخ عضویت
    آبان 1390
    محل زندگی
    http://reza.biz
    پست
    858

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    سلام دوستان .
    راه حل بهتری هم هست ، میتونین یک جدول دیگه به سه تا فیلد به اسم form_id , key , value اضافه کنید و به ازای هر رکورد از جدول فرم ها ، به ازای هر تکست باکس ، از این جدول استفاده کنید .

    همچنین اگر آرایه چند بعدی ندارید و صرفاً اطلاعاتتون بصورت رشته هست ، روی ساختار json هم تاملی داشته باشید ، تعداد کاراکترهای کمتری نسبت به سریالیز داره .

    موفق باشید

  8. #8
    کاربر دائمی آواتار colors
    تاریخ عضویت
    بهمن 1389
    محل زندگی
    کــردســــــــــتــان
    پست
    1,075

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    سلام

    نمیدونم فرمتون مربوط به چی میشه که70 تا فیلد داره! ولی نباید همیشه همه کارها و ... رو به سمت سرور داد و خودمونو مجبور کنیم که راه حل های پیچیده و ... رو پیش بگیریم. شاید این بخش از سیستمتون به درستی تحلیل،‌بررسی و نیازسنجی نشده باشه. شاید واقعا نیاز نباشه که یه فرم 70 تا فیلد بگیره، شاید بشه روی طراح بصری بیشتر تمرکز کرد. مطمئنا هچقدر سیستم پیچیده و وسیع باشه، توسعش به مراتب سخت تر میشه.

  9. #9

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    کلاً برای تنظیمات پلاگینها یک فیلد گذاشته و تمام خصوصیات توش Serialize میشن و پلاگین هم موقع نیازش خصوصیاتش رو با Unserialize کردن فیلد مربوط به رکورد خودش، استخراج میکنه و بصورت آرایه در میاره.
    پلاگینها بخش اصلی سایت نیستن.
    توی قسمتهای اصلی سایت استفاده از این روش درست هست؟

  10. #10
    کاربر دائمی آواتار Unique
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    ایران - اصفهان
    پست
    3,199

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    من اصلا موندم شما برای چی 70 تا فیلد نیاز دارین !!!!
    راستش من وقتی به این جدول ها میخورم متوجه میشم برنامه نویس تحلیل درستی از برنامه نداشته ! امیدوارم مشکل شما این موضوع نباشه اما Serialize کردن کلا ایده مناسبیه گرچه خودم شخصا زیاد استفاده نکردم.

  11. #11

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    من اصلا موندم شما برای چی 70 تا فیلد نیاز دارین !!!!
    وقتی نیازه باید چیکار کنم !
    فیلدها رو نشمرده بودم، الان که گفتید فیلدهای فرم رو شمردم که 40 تا بود. از این 40 فیلد حدود 10 تاش اجباریه و کاربر باید وارد کنه.

    به هرحال این تعداد فیلد نیازه و باید اطلاعات رو از کاربر بگیرم و ذخیره کنم. اگه از Serialize استفاده کنم که مشکل تا حدودی حل می شه. می خوام مطمئن بشم که این روش درسته یا نه.

    اما Serialize کردن کلا ایده مناسبیه گرچه خودم شخصا زیاد استفاده نکردم.
    بخش اصلی وب سایتی که دارم طراحی می کنم با این فرم و اطلاعاتی که از این فرم گرفته می شه ساخته می شه. آیا درست هست که Serialize رو برای قسمتهای اصلی سایت بکار ببریم؟

  12. #12

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    بطور کلی جایی ندیدم که استفاده از Serialize مشکلی ایجاد کرده باشه. حتی در مواردی که مراجعه به دیتابیس زیاد بوده، چون سرعتش واقعاً زیاده. البته من هم شخصاً JSON رو بیشتر میپسندم. البته در هر حال باید مراقب Escapeکردن هم باشین. بخصوص در JSON که مشکلی ازنظر حروف فارسی نداره و نیازی به base64 نیست.

  13. #13

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    بطور کلی جایی ندیدم که استفاده از Serialize مشکلی ایجاد کرده باشه. حتی در مواردی که مراجعه به دیتابیس زیاد بوده، چون سرعتش واقعاً زیاده. البته من هم شخصاً JSON رو بیشتر میپسندم. البته در هر حال باید مراقب Escapeکردن هم باشین. بخصوص در JSON که مشکلی ازنظر حروف فارسی نداره و نیازی به base64 نیست.
    آرایه JSON کجا باید ذخیره بشه؟ می شه توی دیتابیس آرایه ذخیره کرد؟

  14. #14

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    دوست عزیز، JSON آرایه نیست، یک رشته هست. شما میتونید با تابع json_encode یک آرایه رو تبدیل به ساختار JSON کنید و با کمک تابع json_decode دوباره اون رو به حالت آرایه در بیارین. بنابراین اون چیزی که توی دیتابیس ذخیره میشه، یک رشته متنی ساده هست نه یک آرایه. حتی میشه آرایه های تو در تو و چند بعدی رو هم با ساختار JSON ذخیره و بازیابی کرد.
    موفق باشید.

  15. #15

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    دوست عزیز، JSON آرایه نیست، یک رشته هست. شما میتونید با تابع json_encode یک آرایه رو تبدیل به ساختار JSON کنید و با کمک تابع json_decode دوباره اون رو به حالت آرایه در بیارین. بنابراین اون چیزی که توی دیتابیس ذخیره میشه، یک رشته متنی ساده هست نه یک آرایه. حتی میشه آرایه های تو در تو و چند بعدی رو هم با ساختار JSON ذخیره و بازیابی کرد.
    حالا نظر شما چیه، از JSON استفاده کنم یا از Serialize ؟ از نظر سرعت و امینت کدوم رو پیشنهاد می دید؟

  16. #16

    نقل قول: آیا سریالیز کردن اطلاعات فرم و ذخیره توی یک فیلد کار درستی هست؟

    من شخصاً JSON رو ترجیح میدم بنا به دلایل زیر:
    1- برای انسان قابل فهم تره
    2- حجم کمتری توی دیتابیس اشغال میکنه
    3- سرعت کارش بیشتره
    4- امکان تبادل اطلاعات بین PHP و JS و jQuery و کلاً سایر زبانها رو هم خواهید داشت چون اکثر زبانهای رایج امروزی JSON رو پشتیبانی میکنن
    البته برای امنیت بیشتر توصیه میکنم اطلاعاتی که میخواین توی دیتابیس ذخیره کنید رو یا Escape کنید، یا با الگوریتمهای قابل برگشت مثل base64 و... کدگذاری کنید.
    موفق باشید.

تاپیک های مشابه

  1. سوال: فعال کردن چند سیستم COD توی یه فروشگاه کار درستی هست؟
    نوشته شده توسط idocsidocs در بخش PHP
    پاسخ: 6
    آخرین پست: یک شنبه 14 اسفند 1390, 11:48 صبح
  2. سوال: آیا کش کردن اطلاعات توی سیستم فایل مشکلی پیش نمیاره؟
    نوشته شده توسط idocsidocs در بخش PHP
    پاسخ: 5
    آخرین پست: پنج شنبه 09 تیر 1390, 09:29 صبح
  3. فیلتر کردن اطلاعات فرم بعد از لود، از طریق فرم دیگر
    نوشته شده توسط arman007 در بخش برنامه نویسی در 6 VB
    پاسخ: 3
    آخرین پست: دوشنبه 14 آبان 1386, 10:25 صبح
  4. فشرده کردن اطلاعات قبل از ذخیره در دیتا بیس
    نوشته شده توسط bidad در بخش VB.NET
    پاسخ: 3
    آخرین پست: شنبه 01 اردیبهشت 1386, 16:58 عصر
  5. mail کردن اطلاعات فرم در xhtml چه جوریه؟
    نوشته شده توسط soliazad در بخش طراحی وب (Web Design)
    پاسخ: 0
    آخرین پست: دوشنبه 27 فروردین 1386, 13:11 عصر

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •