رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
کمک فوری - ذخیره آرایه ؟؟؟؟؟؟؟؟؟
#1
با سلام
لطفا راهنمایی کنید چطور میتونم یه آرایه توی دیتابیس ذخیره کنم و نوع فیلدش توی migration چی باشه؟
میخوام برای هر پایان نامه ای که ثبت میشه آرایه ای از اسامی دانشجوهایی که اون پایان نامه رو با هم انجام دادن ذخیره کنم.
خیلی جستجو کردم ولی مثالی پیدا نکردم که چطور بنویسم.
ممنون میشم اگه کمکم کنید.
پاسخ
#2
(04-09-2016, 12:46 PM)maryam نوشته:  با سلام
لطفا راهنمایی کنید چطور میتونم یه آرایه توی دیتابیس ذخیره کنم و نوع فیلدش توی migration چی باشه؟
میخوام برای هر پایان نامه ای که ثبت میشه آرایه ای از اسامی دانشجوهایی که اون پایان نامه رو با هم انجام دادن ذخیره کنم.
خیلی جستجو کردم ولی مثالی پیدا نکردم که چطور بنویسم.
ممنون میشم اگه کمکم کنید.

به دو روش میشه این کار رو کرد :

1- اول اینکه فیلد رومیتونید string در نظر بگیرید

2- روش اول : یک آرایه رو serialize کنید و رشته ای که بر میگردونه رو در دیتابیس ذخیره کنید :

کد پی‌اچ‌پی:
$array = array("my""litte""array");

$serialized_array serialize($array); 


روش دوم : با استفاده از json_encode ارایه رو به جیسون تبدیل کنید و در دیتابیس ذخیره کنید

کد پی‌اچ‌پی:
$array = array("my""litte""array");
echo 
json_encode($array); 
کد آن است که خود ببوید نه آن که برنامه نویس بگوید  Cool
پاسخ
#3
(04-09-2016, 12:46 PM)maryam نوشته:  با سلام
لطفا راهنمایی کنید چطور میتونم یه آرایه توی دیتابیس ذخیره کنم و نوع فیلدش توی migration چی باشه؟
میخوام برای هر پایان نامه ای که ثبت میشه آرایه ای از اسامی دانشجوهایی که اون پایان نامه رو با هم انجام دادن ذخیره کنم.
خیلی جستجو کردم ولی مثالی پیدا نکردم که چطور بنویسم.
ممنون میشم اگه کمکم کنید.
اگر خواستید ارایه ای ذخیره کنید به روش بالا فیلد رو TEXT قرار بدید که محدودیت کاراکتر نداشته باشه
اما به نظر من اگه دانشجوها داخل سایت همشون ثبت نام هستند از Relationship استفاده کنید که اگر استاد خواست بتونه اطلاعات کامل دانشجو رو به دست بیاره مستقیما روی اسم دانشجو کلیک کنه و به صفحه دانشجو و مشخصاتش هدایت بشه
اگر بیشتر در این مورد کمک نیاز داشتید بگید تا براتون توضیح بدم
پاسخ
#4
(04-12-2016, 05:33 AM)usef.enayati@yahoo.com نوشته:  
(04-09-2016, 12:46 PM)maryam نوشته:  با سلام
لطفا راهنمایی کنید چطور میتونم یه آرایه توی دیتابیس ذخیره کنم و نوع فیلدش توی migration چی باشه؟
میخوام برای هر پایان نامه ای که ثبت میشه آرایه ای از اسامی دانشجوهایی که اون پایان نامه رو با هم انجام دادن ذخیره کنم.
خیلی جستجو کردم ولی مثالی پیدا نکردم که چطور بنویسم.
ممنون میشم اگه کمکم کنید.
اگر خواستید ارایه ای ذخیره کنید به روش بالا فیلد رو TEXT قرار بدید که محدودیت کاراکتر نداشته باشه
اما به نظر من اگه دانشجوها داخل سایت همشون ثبت نام هستند از Relationship استفاده کنید که اگر استاد خواست بتونه اطلاعات کامل دانشجو رو به دست بیاره مستقیما روی اسم دانشجو کلیک کنه و به صفحه دانشجو و مشخصاتش هدایت بشه
اگر بیشتر در این مورد کمک نیاز داشتید بگید تا براتون توضیح بدم
نقل قول:توی سیستمی که طراحی میکنیم کاربر که عضو سیستم میشه میتونه پایان نامه ی خودشو وارد سیستم کنه که اگه استاد اطلاعات کاربر رو تایید کرد این کاربر که اطلاعاتش توی جدول user بود به جدول students فرستاده میشه و ذخیره میشه و پایان نامه توی صفحه وب نشون داده میشه.ولی اگه استاد شماره دانشجویی و اطلاعات کاربر رو شناسایی نکرد اون پایان نامه از جدول theses حذف میشه.
حالا اگه پایان نامه کار گروهی بود کاربری که عضو سیستم شده میتونه پایان نامه رو ثبت کنه و اسم اعضای گروه رو وارد کنه(این اعضا ممکنه عضو سیستم نباشن) که باید توی جدول students ذخیره بشه.
این چند تا از جدولای دیتابس هستن البته بدون کلید خارجی گذاشتم.میخواستم اعضای گروهو به صورت یه آرایه توی جدول theses ذخیره کنم بعد ببرم تو جدول دانشجو.نمیدونم کارم درسته یا نه؟!
خیلی ممنون بابت راهنماییتون.
کد پی‌اچ‌پی:
students:
--------------------------------------------
            
$table->increments('Student_id');
            
$table->string('Name');
            
$table->string('Family');
        
$table->integer('std_num');
            
$table->timestamps();
users:
-----------------------------------------------
        
$table->increments('User_id');
            
$table->string('Name');
            
$table->string('Family');
            
$table->integer('std_num');
            
$table->string('Username');
            
$table->string('Password');
            
$table->string('Email');
        
$table->timestamps();
theses:
-----------------------------------------------
        
$table->increments('Thesis_id');
            
$table->string('Degree');
            
$table->string('Supervisor');
            
$table->string('Adviser');
            
$table->date('Year');
            
$table->string('Thesis_title');
            
$table->text('Abstract');
            
$table->text('Keywords');
            
$table->string('Abstract_file');
            
$table->string('Thesis_file');
            
$table->boolean('Confirmed');
        [
color=#ff6666]$table->text('members');[/color]
            
$table->timestamps(); 
پاسخ
#5
با این اوصاف به نظرم بهتره که برای جست و جوی اعضای گروه یک متد جست و جو بر اساس نام و نام خانوادگی قرار بدید
و برای ذخیره کردن اعضا هم به شخصه نظرم اینه که جدولی جداگونه بسازید و از دابطه ها استفاده کنید حالا بنا به نیاز یک به چند یا چند به چند. اینجوری برای فراخونی اعضا هم راحت ترین و حتی میتونید متدی بنویسید که اگه یکی از اعضا با این مشخصات عضو شد مستقیما لینک بخوره به پروژه(مثلا توی جدوع اعضا یک فیلد خالی بسازی با نام user_id و وقتی که عضو شد این مقدار به صورت خودکار ایدی دانشجو رو به توش قرار بگیره) باز این ها نظرهایی هست که لحظه ای داره به ذهنم میرسه
من نمیدونم این پروژه تجاریه یا دانشجویی ولی در هر دو حالت پروژه خودتون رو حد وسط بنویسید که اگه تغییراتی خواستید بدید کل سورس پروژه رو مجبور نشید بازنویسی کنید
حتی میتونه جست و جو بر اساس کد ملی کاربر صورت بگیره که یک مقدار غیر تکراری هست...
پاسخ
 


موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  ارسال آرایه از کنترلر به View amirbakhtiari 4 290 09-15-2015, 08:24 AM
آخرین ارسال: amirbakhtiari
  هاست برای لاراول 5.1 فوری cruelcap 1 319 09-08-2015, 04:30 AM
آخرین ارسال: misaghcj
  ذخیره تصویر در لاراول laravel 4 351 07-23-2015, 08:25 AM
آخرین ارسال: behzadsh

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان

درباره انجمن فریم ورک لاراول

انجمن لاراولیستا به عشق توسعه دهنده ها و علاقمندان به این فریم ورک محبوب ایجاد شده و امیدواریم با نظرات خوبتون ما رو در بهبود کار یاری کنید. در ضمن خیلی هم خوشحال میشیم شما هم در توسعه این انجمن سهمی داشته باشید.