# বিষয় ব্যবস্থাপনা ফিচার

এই ফিচারটি স্কুল ম্যানেজমেন্ট সিস্টেমে যোগ করা হয়েছে যাতে প্রতিটি ক্লাসের জন্য আলাদা বিষয় নির্ধারণ করা যায় এবং ছাত্র-ছাত্রীরা তাদের পছন্দের বিষয় নির্বাচন করতে পারে।

## নতুন ফিচারসমূহ

### ১. বিষয় ব্যবস্থাপনা (`subjects/manage.php`)
- নতুন বিষয় যোগ করা
- ক্লাসে বিষয় নির্ধারণ করা
- বিষয় তালিকা দেখা
- ক্লাস অনুযায়ী বিষয় দেখা

### ২. ছাত্র যোগ করার সময় বিষয় নির্বাচন (`students/add.php`)
- ক্লাস নির্বাচনের পর সংশ্লিষ্ট বিষয়গুলো দেখানো হয়
- ছাত্র তার পছন্দের বিষয়গুলো নির্বাচন করতে পারে
- সব নির্বাচন/সব বাতিল বাটন
- ডিফল্টভাবে সব বিষয় নির্বাচিত থাকে

### ৩. ছাত্র তালিকায় বিষয় দেখানো (`students/list.php`)
- প্রতিটি ছাত্রের নির্বাচিত বিষয়গুলো দেখানো হয়
- বিষয়ের কোড এবং সংখ্যা দেখানো হয়

## ডাটাবেস টেবিল

### নতুন টেবিল
- `student_subjects`: ছাত্র এবং বিষয়ের মধ্যে সম্পর্ক

### বিদ্যমান টেবিল
- `subjects`: বিষয়ের তথ্য
- `class_subjects`: ক্লাস এবং বিষয়ের মধ্যে সম্পর্ক

## ব্যবহারের নির্দেশনা

### ১. প্রথমে বিষয় তৈরি করুন
1. `subjects/manage.php` পেজে যান
2. "নতুন বিষয় যোগ" ট্যাবে বিষয়ের নাম ও কোড দিন
3. বিষয় সংরক্ষণ করুন

### ২. ক্লাসে বিষয় নির্ধারণ করুন
1. "ক্লাসে বিষয় নির্ধারণ" ট্যাবে যান
2. ক্লাস নির্বাচন করুন
3. সংশ্লিষ্ট বিষয়গুলো নির্বাচন করুন
4. সংরক্ষণ করুন

### ৩. ছাত্র যোগ করার সময়
1. `students/add.php` পেজে যান
2. ছাত্রের তথ্য পূরণ করুন
3. ক্লাস নির্বাচন করুন
4. স্বয়ংক্রিয়ভাবে সেই ক্লাসের বিষয়গুলো দেখানো হবে
5. প্রয়োজনীয় বিষয়গুলো নির্বাচন করুন
6. ছাত্র সংরক্ষণ করুন

## ফাইল পরিবর্তন

### নতুন ফাইল
- `subjects/manage.php`
- `create_tables.php`
- `test_subjects.php`

### পরিবর্তিত ফাইল
- `students/add.php` - বিষয় নির্বাচন ফিচার যোগ
- `students/list.php` - বিষয় তথ্য দেখানো
- `config/database.php` - student_subjects টেবিল যোগ
- `setup.php` - নতুন টেবিল এবং নমুনা ডেটা

## কাস্টমাইজেশন

### বিভিন্ন ক্লাসের জন্য বিভিন্ন বিষয়
- প্রাথমিক ক্লাস (১-৫): বাংলা, ইংরেজি, গণিত, শারীরিক শিক্ষা
- মাধ্যমিক ক্লাস (৬-৮): সব বিষয়
- উচ্চ মাধ্যমিক (৯-১০): সব বিষয়

### নতুন বিষয় যোগ করা
`subjects/manage.php` পেজ থেকে সহজেই নতুন বিষয় যোগ করা যায়।

## সমস্যা সমাধান

### যদি বিষয় দেখা না যায়
1. `create_tables.php` চালান
2. `test_subjects.php` দিয়ে টেস্ট করুন
3. ডাটাবেসে `student_subjects` টেবিল আছে কিনা চেক করুন

### যদি ক্লাস নির্বাচনের পর বিষয় না আসে
1. `subjects/manage.php` থেকে সেই ক্লাসে বিষয় নির্ধারণ করুন
2. JavaScript console এ error আছে কিনা দেখুন