PHP CI MANIA การสร้างปุ่มแสดงสถานะ แทนการแสดงเป็นตัวหนังสือแบบธรรมดา (CodeIgniter + Bootstrap)
การแก้ไขโค้ดในส่วนของ ตารางแสดงรายการ (ค้นหา/แบ่งหน้า)
จะเริ่มจากฟังก์ชั่น search() ใน Controller ที่ Query ข้อมูลจากฐานข้อมูล
และส่งไปจัดรูปแบบในฟังก์ชั่น setDataListFormat()
รูปแบบของตัวแปรที่ใช้เก็บข้อมูลจะมีการสร้าง Index ด้วยตัวแปร $i เพื่อวนลูปเข้าถึงข้อมูลทุกเรคอร์ที่เราได้ Query ออกมา ตัวอย่างเช่น ถ้าต้องการสร้างตัวแปรใหม่เพื่อเก็บค่าสถานะปุ่มเอาไว้
$data[$i]['status_button'] = $this->setButtonStatus($data[$i]['status']);
ในฟังก์ชั่น setButtonStatus() เราก็ต้องเขียนคำสั่งเงื่อนไขต่างๆที่ต้องการแสดงขึ้นใหม่ เช่น
private function setButtonStatus($value){ $button = ''; switch($value){ case 1: $button = '<button type="button" class="btn btn-primary">Pending</button>'; break; case 2: $button = '<button type="button" class="btn btn-success">Approved</button>'; break; case 3: $button = '<button type="button" class="btn btn-warning">Rejected</button>'; break; case 4: $button = '<button type="button" class="btn btn-danger">Denined</button>'; break; } return $button; }
เราจะได้ตัวแปร status_button เอาไว้ใช้ใน list_view.php ที่เราส่งไป render ในฟังก์ชั่น search() ต้นทาง
$this->render_view('demo/student/list_view');
ในส่วนของ View เราจะใชการ render ด้วย Template Engine ของ CodeIgniter ก็เพียงแค่ใส่วงเล็บปีกกาครอบตัวแปรที่เราต้องการเรียกใช้ง่ายๆเท่านี้ เช่น
<td>{status_button}</td>
ก็คือการแสดงค่าตัวแปรในคอลัมน์ที่ต้องการ
PHP CI MANIA - PHP Code Generator
โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม"
ความคิดเห็น
แสดงความคิดเห็น