CodeIgniter ব্যবহার করে ফর্ম তৈরি এবং ডেটা সাবমিট করার প্রক্রিয়া খুবই সহজ এবং কার্যকর। CodeIgniter এর Form Helper এবং Validation Library ব্যবহার করে ফর্ম ডেটা সহজে প্রক্রিয়া এবং যাচাই করা যায়।
প্রথমে একটি Controller তৈরি করুন, যা ফর্ম ভিউ লোড করবে এবং ফর্ম ডেটা প্রক্রিয়া করবে।
namespace App\Controllers;
use CodeIgniter\Controller;
class FormController extends Controller {
public function index() {
return view('form_view');
}
public function submit() {
// ফর্ম ডেটা রিসিভ করুন
$name = $this->request->getPost('name');
$email = $this->request->getPost('email');
// ডেটা দেখান
echo "Name: " . esc($name) . "<br>";
echo "Email: " . esc($email);
}
}
app/Views/form_view.php
নামে একটি ফাইল তৈরি করুন এবং HTML ফর্ম কোড যোগ করুন:
<!DOCTYPE html>
<html>
<head>
<title>Form Example</title>
</head>
<body>
<h1>Fill the Form</h1>
<form action="<?= site_url('formcontroller/submit'); ?>" method="post">
<label for="name">Name:</label>
<input type="text" name="name" id="name" required><br><br>
<label for="email">Email:</label>
<input type="email" name="email" id="email" required><br><br>
<button type="submit">Submit</button>
</form>
</body>
</html>
app/Config/Routes.php
ফাইলে Controller এর জন্য রাউট যোগ করুন:
$routes->get('form', 'FormController::index');
$routes->post('formcontroller/submit', 'FormController::submit');
CodeIgniter এর Validation Library ব্যবহার করে ফর্ম ডেটা যাচাই করুন।
namespace App\Controllers;
use CodeIgniter\Controller;
class FormController extends Controller {
public function submit() {
$validation = \Config\Services::validation();
// ভ্যালিডেশন রুলস সেট করুন
$validation->setRules([
'name' => 'required|min_length[3]|max_length[50]',
'email' => 'required|valid_email'
]);
// ফর্ম ডেটা যাচাই করুন
if (!$validation->withRequest($this->request)->run()) {
// ভ্যালিডেশন ফেইল হলে
return view('form_view', ['validation' => $validation]);
}
// সফল হলে
$name = $this->request->getPost('name');
$email = $this->request->getPost('email');
echo "Name: " . esc($name) . "<br>";
echo "Email: " . esc($email);
}
}
form_view.php
ফাইলে নিচের কোড যোগ করুন:
<?php if (isset($validation)): ?>
<div style="color: red;">
<?= $validation->listErrors(); ?>
</div>
<?php endif; ?>
app/Models/FormModel.php
নামে একটি মডেল তৈরি করুন:
namespace App\Models;
use CodeIgniter\Model;
class FormModel extends Model {
protected $table = 'form_data';
protected $allowedFields = ['name', 'email'];
}
namespace App\Controllers;
use App\Models\FormModel;
use CodeIgniter\Controller;
class FormController extends Controller {
public function submit() {
$validation = \Config\Services::validation();
$validation->setRules([
'name' => 'required|min_length[3]|max_length[50]',
'email' => 'required|valid_email'
]);
if (!$validation->withRequest($this->request)->run()) {
return view('form_view', ['validation' => $validation]);
}
$formModel = new FormModel();
$formModel->save([
'name' => $this->request->getPost('name'),
'email' => $this->request->getPost('email')
]);
echo "Data saved successfully!";
}
}
form_data
নামে একটি ডাটাবেস টেবিল তৈরি করুন:
CREATE TABLE form_data (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(50) NOT NULL,
email VARCHAR(100) NOT NULL
);
ফর্মের জন্য পৃথক টেমপ্লেট তৈরি করুন এবং কন্টেন্ট ডায়নামিক করার জন্য পুনরায় ব্যবহারযোগ্য ফাইল তৈরি করুন। উদাহরণ:
<?php echo form_open('formcontroller/submit'); ?>
<label for="name">Name:</label>
<input type="text" name="name" id="name" required><br><br>
<label for="email">Email:</label>
<input type="email" name="email" id="email" required><br><br>
<button type="submit">Submit</button>
<?php echo form_close(); ?>
CodeIgniter-এ ফর্ম তৈরি এবং ডেটা সাবমিট করা খুব সহজ। Validation Library ব্যবহার করে ইনপুট যাচাই নিশ্চিত করা যায় এবং Model ব্যবহার করে ডাটাবেসে ডেটা সংরক্ষণ করা যায়। ফর্মের পুনরায় ব্যবহারযোগ্যতা নিশ্চিত করার জন্য ফর্মের কম্পোনেন্টগুলো পৃথক করুন এবং সেগুলো টেমপ্লেট আকারে সংরক্ষণ করুন।
Read more