ข้ามไปที่เนื้อหาหลัก

บทความ

กำลังแสดงโพสต์จาก เมษายน, 2020

CodeIgniter Generator การส่งค่าไปประมวลผลที่ Controller ด้วย AJAX เพื่อคำนวณอายุตามวันเกิดที่เลือก

ตัวอย่างการเพิ่มอีเวนต์ On Change ให้กับ DatePicker เพื่อส่งค่าวันที่ไปประมวลผลใน Controller ผ่าน AJAX เพื่อหาอายุตามวันที่เลือก เพิ่มฟังก์ชั่นที่ไฟล์ application/helpers/ci_utilities_helper.php function ci_date_diff($start_date, $end_date = ''){ if($end_date == ''){ $end_date = date('Y-m-d'); } $datetime1 = new DateTime($start_date); $datetime2 = new DateTime($end_date); $interval = $datetime1->diff($datetime2); $diff = array(); $diff['year'] = $interval->format('%y'); $diff['month'] = $interval->format('%m'); $diff['day'] = $interval->format('%d'); $diff['hour'] = $interval->format('%h'); $diff['min'] = $interval->format('%i'); $diff['second'] = $interval->format('%s'); return $diff; } เพิ่มฟังก์ชั่นใน Controller ของโมดูลที่เราสร้างขึ้นมา เช่น application/modules/test/controllers/Product.php  publ...

การเปลี่ยนแปลง Title Tag ของ Website ใน PHP CI MANIA

ตัวอย่างการเปลี่ยน Title ของหน้าเว็บในแต่ละหน้า ที่แท็ก <title></title> ในไฟล์ homepage_view.php กำหนดเป็น {page_title} การวางไว้ส่วนของฟังก์ชั่น __construct() จะมีผลกับทุกหน้าของ Controller นั้นๆ หน้าค้นหา แสดงรายการ หน้าแสดงรายละเอียด หน้าแบบฟอร์มเพิ่มข้อมูล หน้าแบบฟอร์มแก้ไขข้อมูล นอกจากที่ยกตัวอย่างมานี้ หากต้องการแสดงในหน้าอื่นๆ ก็สามารถนำไปวางไว้ในตำแหน่งก่อนที่จะถึงบรรทัด $this->render_view() PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

PHP Fast Coding สร้างฟังก์ชั่น ตรวจสอบค่าซ้ำ (UNIQUE KEY) ก่อนเพิ่มข้อมูล

เริ่มจากการเพิ่มส่วนของการเรียกฟังก์ชั่นใหม่ที่ใช้ตรวจสอบค่าซ้ำ เช่น $message .= $this->formValidateUser(); คือการตรวจสอบชื่อ User ซ้ำกันหรือไม่ สร้างฟังก์ชั่น formValidateUser() ตรวจสอบ User โดยที่เขียนเงื่อนไขการค้นหา ด้วย User ที่ผ่านค่า POST มา ถ้าพบแสดงว่าชื่อซ้ำกัน ตัวอย่างโค้ดตรวจสอบ User ซ้ำ public function formValidateUser() { $message = ''; $username = $this->input->post('username', TRUE); $this->Portfolio->set_table_name('YOUR_TABLE_USER'); $this->Portfolio->set_where("username = '$username'"); $count = $this->Portfolio->count_record(); if($count > 0){ $message .= "ชื่อ $username ซ้ำกัน"; } return $message; } หากต้องการสร้างฟังก์ชั่นที่เช็คพร้อมกันมากกว่า 1 ฟิลด์ ให้เพิ่มตัวแปรรับค่า POST และเพิ่มเงื่อนไขในส่วนของ WHERE ตามจำนวนฟิลด์ที่ต้องการ public function formValidateBooking() { $message = ''; $staff_nam...

phpMyAdmin ขั้นตอนการกำหนด UNIQUE KEY ให้กับตาราง MySQL ที่ฟิลด์ต้องไม่ซ้ำกัน

ถ้าใช้เครื่องมือจัดการฐานข้อมูลด้วย phpMyAdmin การจะกำหนดให้ฟิลด์ที่มีค่าไม่ซ้ำกันเป็น UNIQUE KEY นั้นจะสามารถทำได้ดังต่อไปนี้ 1. คลิกที่แท็ป Structure เพื่อปรับแต่งโครงสร้างตาราง เลื่อนไปยังด้านล่าง จะมีส่วนของการกำหนด Indexes เราจะเพิ่มแก้ไขฟิลด์ให้เป็น PRIMARY หรือ UNIQUE ได้จากการกดปุ่ม Go 2. ตั้งชื่อ Index เลือกประเภทเป็น UNIQUE และระบุฟิลด์ที่ต้องการ จากนั้นก็กดปุ่ม GO 3. เมื่อการเพิ่ม UNIQUE เรียบร้อย จะพบรายการใหม่ขึ้นมาต่อท้าย PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4 ,500    บาท http://fastcoding.phpcodemania.com

CodeIgniter Generator สร้างเงื่อนไขการจัดเรียงอ้างอิงเลขตัวท้ายด้วยฟังก์ชั่น RIGHT()

เริ่มจากการกำหนดฟิลด์ที่ต้องการจัดเรียงในแท็ป Views ส่วนของตารางรายการ (list_view.php) แก้ไขโค้ดที่ Model ฟังก์ชั่น read() สำหรับการค้นหาหน้า List view $order_by = ''; if($this->order_field != ''){ $order_field = $this->order_field; $order_sort = $this->order_sort; // Order by with Function if($order_field == 'portfolio_subject'){ $order_by = "RIGHT($this->my_table.portfolio_subject, 3) $order_sort"; }else{ $order_by = " $this->my_table.$order_field $order_sort"; } } ก็จะได้การจัดเรียงด้วยเลขตัวท้าย วิดีโอตัวอย่างขั้นตอนการแก้ไขโค้ดเพื่อจัดเรียงด้วยฟังก์ชั่น RIGHT() PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

วิธีการส่งข้อมูลการตั้งค่า MVC เพื่อตรวจสอบการทำงานของ PHP CI MANIA (CodeIgniter Generator)

เมื่อการทำงานของระบบ PHP CI MANIA เกิดข้อผิดพลาด สามารถส่งข้อมูลให้แอดมินตรวจสอบได้ตามขั้นตอนดังต่อไปนี้ 1) แคปเจอร์หน้าจอการตั้งค่า MVC และ บันทึกการตั้งค่า ให้เรียบร้อย 2) ทำการ Export ตารางการตั้งค่าในฐานข้อมูล db_ci_gen ตาราง tb_ci_setting 3) ต่อด้วยการ Export ตารางที่เกี่ยวข้องกับการ Generate ครั้งนั้นทั้งหมดมาพร้อมกันด้วย (ซึ่งตารางที่เกี่ยวข้อง จะอยู่กับฐานข้อมูลใดๆ ที่อาจจะไม่ใช่ db_ci_gen ให้ระบุชื่อฐานข้อมูลมาด้วย) เมื่อได้ไฟล์ 3 ส่วนนี้แล้ว ให้ส่งไปที่อีเมล sunzandesign@gmail.com  หรือส่งผ่าน Messenger ที่เพจ  facebook.com/ToBeDeveloper ขั้นตอนการส่งโค้ดจากระบบ PHP CI MANIA ให้แอดมินตรวจสอบ (กรณีที่ไม่ได้ Error จากการ Generate) PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

ตัวอย่างการปรับแต่ง ความกว้าง-ความสูง ของ Select Box ใน PHP CI MANIA (CodeIgniter + Bootstrap + Select2) (Option List)

ตัวอย่างการปรับแต่งความกว้างของ Select Box ที่ทำงานกับ Select2() ค่าเริ่มต้นในระบบ PHP CI MANIA จะกำหนดเป็น Auto คือปรับขนาดตามข้อมูลที่แสดง ดังนั้น ความกว้างจะสั้นยาว ไม่คงที่แล้วแต่ข้อมูลที่เลือก หากต้องการกำหนดค่าคงที่ ให้ปรับเปลี่ยนโดยการค้นหา setDropdownList() หรือค้นหาชื่อ Select box ตัวนั้นๆ เพราะอาจจะมีการกำหนดหลายที่ด้วยคำสั่ง select2() เพิ่มเติม หลังจากทดลองใส่พารามิเตอร์ตัวที่สอง เป็นความยาว 600 เมื่อบันทึก และกลับมารีเฟรชที่หน้าเว็บก็จะพบว่าความกว้างของ Select box ได้เปลี่ยนแปลงตามต้องการ สำหรับการปรับความสูง ใช้ CSS กำหนดดังนี้ /* Select2 */ .select2-container .select2-choice { height: 38px; line-height: 36px; } .select2-container .select2-choice .select2-arrow b { background-position: 0 5px; } ถ้าจะให้มีผลทุกที่ ให้ใส่ไว้ที่ Template ที่เราใช้งานเช่น ไฟล์ template/ sb-admin-bs4 /homepage_view.php sb-admin-bs4  คือโฟลเดอร์ Template ที่เลือกใช้ homepage_view.php   คือไฟล์ที่เป็นหน้า Homepage หลักของเรามีผลกับทุกหน้า ...

Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini

วิธีแก้ไขค่า max_input_vars  ใน XAMPP ที่ Control Panel ของ XAMP คลิกที่ปุ่ม Config แล้วเลือก PHP (php.ini) หลังจาก Text Editor เปิดขึ้นมาก็เปิดการค้นหา ค้นหาด้วยคำว่า  max_input_vars   ให้เอาช่องว่างและเครื่องหมาย ; ด้านหน้าออกไป และเปลี่ยนตัวเลขด้านหลังให้เป็นค่าที่ต้องการ จะเพิ่มทีละเท่าไหร่ก็ได้ จากนั้นก็ทำการ Save และ Stop / Start การทำงานของ XAMP อีกครั้งก็เป็นอันเรียบร้อยครับ PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

การเปลี่ยนหน้าด้วยคำสั่งใน JavaScript ใน PHP CI MANIA

การเปลี่ยนหน้าด้วยคำสั่งใน JavaScript จะใช้วิธีการแทรกคำสั่งเปลี่ยนหน้า ไปยังจุดที่ทำงานเสร็จเรียบร้อย window.location = site_url('student/address'); สังเกตว่าถ้าเป็น Ajax จะอยู่ในฟังก์ชั่น success:  และถ้าเป็นหลังจากบันทึกเรียบร้อย ก็จะต้องอยู่หลังจากตรวจสอบว่าเรียบร้อยแล้วจริงๆ if( results.is_successful ){        window.location = site_url('student/address'); } PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

การแสดงคำสั่ง SQL ที่คิวรี่ล่าสุด ใน CodeIgniter

ตัวอย่างนี้เป็นการแสดงคำสั่ง SQL ในหน้าค้นหารายการ ซึ่งจะอยู่ใน Model ฟังก์ชั่น  read() หากต้องการแสดงคำสั่ง SQL ที่จุดใดก็ตาม เพียงแค่นำคำสั่ง echo $this->db->last_query(); ไปวางต่อจากบรรทัดที่ Query ก็จะได้ข้อมูลออกมาดังในภาพแรก PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

Ajax select OnChange การสร้าง option list และนำไปแสดงผลใน Select box ตัวที่กำหนด ( CodeIgniter )

Ajax select OnChange การสร้าง option list และนำไปแสดงผลใน Select box ตัวที่กำหนด ( CodeIgniter ) PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    4,500    บาท http://fastcoding.phpcodemania.com

ค้นหาในเว็บไซต์

เนื้อเพลงที่ได้รับความนิยม ในรอบสัปดาห์

การทำ Index ให้ MySQL Database เพื่อเพิ่มความเร็ว

สำหรับตัวอย่างนี้จะเป็นการ JOIN ตาราง 2 ตาราง 1. tb_reject_hd 2. tb_reject_desc ซึ่งจะเชื่อมกันด้วยฟิลด์ docno จะเห็นว่าเราสามารถคิวรี่เรียกข้อมูลออกมาได้ตอนที่ยังไม่ใส่ ORDER BY แต่เมื่อใส่ ORDER BY เข้าไป จะหมุนค้างจนหน้าเว็บหยุดทำงาน จากนั้นก็ลองเพิ่ม INDEX ให้กับฟิลด์ docno ในตาราง tb_reject_desc  ซึ่งในตัวอย่างนี้จะสร้างตารางใหม่ขึ้นมาจากตารางเดิม เปลี่ยนชื่อเป็น tb_reject_desc_with_index และทำการเพิ่ม INDEX KEY เข้าไป เมื่อทดสอบคิวรี่แบบมี ORDER BY จะเห็นว่าสามารถแสดงผลได้ทันที จากการสังเกตตัวเลขเวลาในการประมวลผล จะเห็นได้ว่าแบบไม่ใช้ ORDER BY จะทำงานเร็วกว่า แต่ในการทำงานส่วนใหญ่ก็มักจะต้องใช้ ORDER BY อย่างหลีกเลี่ยงไม่ได้ เช่นกรณีค้นหา แบบเรียงลำดับ ตัวอย่างโค้ดคิวรี่ข้อมูลจากตารางที่ Add Index Key แล้ว <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>Add Index Key</title> </head> <body> <h2>ORDER BY with ...

PHP CI MANIA 0.8.4.09 แก้ไขปัญหา Import ไฟล์ Excel แล้วไม่สามารถบันทึกได้ + เพิ่มตัวเลือก Validate บางฟิลด์

- เพิ่มตัวเลือก Validate บางฟิลด์ กรณีละเว้นการตรวจสอบให้เอาเครื่องหมายเช็คถูกออก -  แก้ไขปัญหา Import ไฟล์ Excel แล้วไม่สามารถบันทึกได้ สมาชิก Premium ดาวน์โหลดได้ที่ http://fastcoding.phpcodemania.com/index.php/downloads PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    http://fastcoding.phpcodemania.com

แจกโค้ด PHP : รวมลิงค์ แจกฟรี!! ตัวอย่างโปรเจ็กต์ ที่พัฒนาด้วย PHP

       สำหรับหลายท่านที่ขอโค้ดเข้ามาทาง Inbox ของเฟซบุ๊กแฟนเพจ หรือถามถึงระบบต่างๆหลังไมค์มานั้น ส่วนใหญ่ก็มีแจกอยู่แล้วในเว็บบอร์ด ThaiCreate.Com นะครับ  และด้านล่างนี้ก็เป็น Source Code PHP ระบบต่างๆ ที่มีเหล่าผู้ใจดีแจกฟรี!! ให้นำไปลองใช้ลองศึกษากันครับ แจกฟรี  !! ตัวอย่างการ  PHP  Booking # จองห้องประชุม  ผ่านเว็บครับ http://www.thaicreate.com/php/forum/090558.html ระบบแบบสอบถาม https://www.thaicreate.com/php/forum/099342.html แจก code!! การทำประเมินออนไลน์มี ไว้สำหรับพัฒนาต่อยอด https://www.thaicreate.com/php/forum/102203.html แจกฟรี PHP CodeIgniter CMS ให้ทุกท่านได้ลอง (รองรับ Responsive) http://www.thaicreate.com/php/forum/122929.html โดย : https://www.cszcms.com/ แจก PHP : ระบบยืม-คืนเอกสาร (จากตัวอย่าง เอกสารข้อมูลวัตถุดิบสินค้า) http://www.thaicreate.com/php/forum/103428.html แจกระบบ PHP Shopping Cart ระบบตะกร้าสินค้า ระบบสั่งซื้อ มีระบบตัดสต๊อก, สั่งซื้อวัตถุดิบคงเหลือ ht...

การสร้างเว็บไซต์ในปี 2023 นั้นจะต้องคำนึงถึงอะไรบ้าง

การสร้างเว็บไซต์ในปี 2023 นั้นจะต้องคำนึงถึงความเปลี่ยนแปลงของเทคโนโลยีและแนวโน้มการใช้งานของผู้ใช้ใหม่ๆ ดังนั้น นี่คือเทคนิคที่สามารถช่วยให้การสร้างเว็บไซต์ในปี 2023 เป็นไปได้อย่างรวดเร็วและเป็นประสิทธิภาพ: 1. ใช้ Responsive Design: การออกแบบเว็บไซต์ให้สามารถปรับขนาดได้ตามขนาดของหน้าจอของอุปกรณ์ต่างๆ เช่น โทรศัพท์มือถือ แท็บเล็ต และคอมพิวเตอร์ เพื่อให้ผู้ใช้สามารถเข้าถึงและใช้งานได้ง่ายและสะดวก 2. ใช้โครงสร้างของ HTML5: การใช้โครงสร้าง HTML5 จะช่วยให้เว็บไซต์ของคุณมีประสิทธิภาพและปรับปรุงในเรื่องของการเข้าถึงข้อมูล การใช้งานและความปลอดภัย 3. ใช้ CSS Grids หรือ Flexbox: การใช้ CSS Grids หรือ Flexbox จะช่วยให้ง่ายต่อการจัดหน้าเว็บไซต์ และสามารถปรับแต่งรูปแบบของเว็บไซต์ได้ง่ายขึ้น 4. ใช้ JavaScript Frameworks: การใช้ JavaScript Frameworks เช่น React, Angular, หรือ Vue.js จะช่วยให้สามารถสร้างเว็บไซต์ที่เป็น interactive และมีประสิทธิภาพได้อย่างรวดเร็ว 5. ใช้ Content Management Systems (CMS): การใช้ CMS เช่น WordPress, Joomla, หรือ Drupal จะช่วยให้สามารถสร้างเว็บไซต์ได้อย่างร PHP  C...

PHP กับจัดการฐานข้อมูลหมวดหมู่สินค้า MySQL แบบใช้ตารางเพียงตารางเดียวเท่านั้น

การเขียนโปรแกรม PHP แสดงหมวดหมู่สินค้า สำหรับโครงสร้างฐานข้อมูลแบบทั่วไปเมื่อมีรายการย่อย เราจะใช้หลักการ One -> Many คือมี 1 ตารางหมวดหมู่หลัก และมีอีก 1 ตารางเป็นหมวดหมู่ย่อย แต่ปัญหาของกรณีแยกตารางออกจากกันนี้ ตัวผู้เขียนพบปัญหาว่าเมื่อมีหมวดหมู่ย่อยลงไปอีก  3 ชั้นบ้าง 4 ชั้นบ้าง หรืออาจจะมีหมวดย่อยไม่จำกัด ก็จะทำให้การเขียนโปรแกรมนั้นยากขึ้น เช่น การเขียนคำสั่ง SQL JOIN เพื่อดึงข้อมูลตารางที่ 2 มาแสดง SELECT        id, name FROM        tb_cate1 AS tbMaster INNER JOIN        tb_cate2 AS tbDetail ON tbMaster.id= tbDetail.ref_id WHERE        {เงื่อนไขที่ใช้ค้นหา} และเมื่อมีการเชื่อมหลายๆตาราง ก็จะทำให้หน้าเว็บทำงานได้ช้าลง (อ่านเรื่อง " การทำ Index ให้ MySQL Database เพื่อเพิ่มความเร็ว ") ดังนั้นผู้เขียนจึงได้ทำการปรับปรุงตาราง ให้เหลือตารางเดียว และกำหนดฟิลด์ ref_parent_id สำหรับใช้อิงหมวดหมู่หลักของรายการนั้นๆ ซึ่งถ้ามีค่าเป็น 0 แสดงว่าเป็นหมวดห...

CodeIgniter การกำหนดเงื่อนไขค้นหาในหน้า ตารางแสดงรายการ เพื่อให้การแสดงผล Pagination ทำงานถูกต้อง

การค้นหารายการในหน้า " ตารางแสดงรายการ " เราสามารถปรับแต่งส่วนของ การจัดเรียง ส่วนของการค้นหา เพิ่มเติมได้ที่ Model ที่ฟังก์ชั่น read() ซึ่งจะมีการ Query ด้วยกัน 3 ครั้ง คือ (1) นับจำนวนทั้งหมด (แบบไม่กำหนด WHERE) <= ปัจจุบันไม่ได้เอาไปแสดงผล (2) นับจำนวนที่ค้นหาเจอ จะยอดที่แสดงในส่วนของ "จากทั้งหมด ..... รายการ" (3) ดึงรายการทั้งหมดที่ค้นเจอ โดยสามารถกำหนดเงื่อนไขการแบ่งหน้าได้ public function read($start_row = FALSE, $per_page = FALSE) { $search_field = $this->session->userdata($this->session_name . '_search_field'); $value = $this->session->userdata($this->session_name . '_value'); $value = trim($value); // ถ้ามีเงื่อนไขหลัก ให้ใส่ไว้ก่อนที่นี่ $where = "GEO_ID IN (1, 2, 3)"; $order_by = ''; if($this->order_field != ''){ $order_field = $this->order_field; $order_sort = $this->order_sort; $order_by = " $this->my_table.$or...

PHP ระบบบริหารจัดการ พล็อตนิยาย - ตอนที่ 1

PHP Fiction Management System   โปรเจ็กต์นี้จะสร้างเป็น "ระบบบริหารจัดการพล็อตนิยาย" แบบง่ายๆ มาเล่าสู่กันฟังครับ มีอยู่ช่วงหนึ่งที่ผมสนใจการเขียนนิยาย และค้นหาข้อมูลเพิ่มเติมเกี่ยวกับการเขียนนิยาย และได้พบกับโปรแกรมหนึ่งที่ช่วยงานด้านการเขียนนิยายให้เป็นเรื่องที่ง่ายขึ้น แต่จากที่ได้อ่านรีวิวแล้วดูเหมือนว่า โปรแกรมช่วยเขียนนิยายนี้ ไม่จะไม่ค่อยรองรับภาษาไทย แต่ผมก็ยังไม่ได้ลองมาดาวน์โหลดมาลองใช้งานดูนะครับ แต่รู้สึกชอบเครื่องมือนี้ เลยอยากลองพัฒนาโดยถอดคุณสมบัติพื้นฐานมาใช้งานดู ว่าจะใช้กับงานเขียนนิยายได้จริงรึเปล่า ตัวอย่างระบบจัดการพล็อตเรื่อง เพื่อช่วยงานเขียนนิยาย หลังจากที่ได้นั่งคิดนอนคิด และหลับไปฝันไป จนในที่สุดก็ได้ฐานข้อมูลระบบบริหารจัดการพล็อตนิยายมาคร่าวๆ มาจนได้ โครงสร้างฐานข้อมูลตอนนี้อาจจะขี้เหร่ไปบ้าง แต่ในอนาคตก็คงจะพัฒนากันต่อไป   ตารางที่จะต้องสร้าง มีทั้งหมด ดังนี้ 1. รายชื่อนิยายทั้งหมด 2. แนวนิยายที่เขียน 3. พล็อตของแต่ละเรื่อง 4. ฉากเหตุการณ์ในแต่ละพล็อต 5. เนื้อเรื่องในแต่ละฉาก 6. รายชื่อตัวละครในนิยา...

ออกแบบระบบ Login อย่างง่ายด้วย CodeIgniter Framework

โครงสร้างการจัดวางไฟล์ application/ ├── controllers/ │   └── Member_login.php ├── models/ │   └── Member_login_model.php ├── views/ │   └── member_login/ │       └── login_view.php ส่วนของฟอร์ม HTML ( View ) <div class="container"> <h2>Login</h2> <?php if($this->session->flashdata('error_message')): ?> <div class="alert alert-danger"> <?php echo $this->session->flashdata('error_message'); ?> </div> <?php endif; ?> <?php echo form_open('member_login/login'); ?> <div class="form-group"> <label for="username">Username:</label> <input type="text" class="form-control" id="username" name="username"> </div> <div class="form-group"> <label for="password">Password:</label> <input type="password" class=...

PHP CI MANIA : ตอนที่ 11 วิธีสร้างแบบฟอร์มบันทึกข้อมูลแบบ Master - Detail เพิ่ม/ลบ/แก้ไข รายการย่อยได้

การสร้างแบบฟอร์มแบบ Master & Detail ก็คือการทำงานกับตาราง 2 ตาราง โดยที่จะมีการบันทึกข้อมูลหลักส่วนที่ 1 และมีแบบฟอร์มสำหรับบันทึกข้อมูลรายการ ในส่วนที่ 2 ดังภาพ ส่วนของการตั้งค่าจะอยู่ในแท็ป " ตั้งค่า" ส่วนที่ 4 ด้านล่างสุด "ข้อมูลตารางรายการ (Detail)" 1. เลือกตารางที่จะใช้บันทึกรายการ เช่นหน้าเว็บนี้คือการบันทึกประวัติ Resume ดังนั้นก็จะมีตารางเก็บผลงานต่างๆ นั่นก็คือตาราง tb_portfolio ที่เลือกในภาพ 2. จะปรากฏข้อมูลฟิลด์ของตารางที่เลือกเพิ่มมาด้านล่าง 3. ดูในส่วนของตารางหลัก (Master) ใน tb_resume จะมีฟิลด์ที่เป็น Primary Key ชื่อว่า resume_id ดังที่เลือกไว้ในภาพ 4. จากนั้นก็ย้ายมาด้านตารางรายการ (Detail) เราจะต้องเลือก Foreign Key หรือง่ายๆก็คือ เลือกฟิลด์ที่เราจะเอาไอดีของตารางหลัก มาใส่อ้างอิงในแต่ละรายการนั่นเอง 5. หลังจากนั้นก็กำหนดรูปแบบช่อง INPUT เหมือนกับที่กำหนดให้ตารางหลัก ในบทที่ผ่านๆมา คือ ช่องวันที่ ช่องอัพโหลดไฟล์ ช่องตัวเลข หรือการ JOIN ต่างๆ 6. หลังจากนั้นให้คลิกสร้างไฟล์ Models, Views, JS และ Controller...

วิธีแก้ไข JavaScript โดยไม่ต้อง Refresh หน้าเว็บใหม่

แก้ไข JavaScript โดยไม่ต้อง Refresh เป็นปกติทุกครั้งที่แก้ไขโค้ด JavaScript เราจำเป็นจะต้องรีเฟรชหน้าเว็บใหม่ทุกครั้ง แต่วันนี้ผมจะมาแนะนำวิธีรัน JavaScript ให้พร้อมใช้งานโดยไม่ต้องโหลดหน้าเว็บใหม่มาแนะนำครับ (สำหรับกรณีที่กำลังป้อนข้อมูลแบบฟอร์ม แล้วไม่อยากป้อนใหม่ เวลาที่ JavaScript error) ( แก้ปัญหาเวลาแก้ไข JavaScrip, CSS อัพขึ้นโฮสต์แล้วต้องกด CTRL + F5 เพื่อโหลดไฟล์ใหม่ทุกครั้ง ) ปัญหาเริ่มจากกดปุ่มลบ แล้ว Page not found  (หรือกรณี Event ใดๆ ที่กดปุ่มแล้ว JavaScript ไม่ทำงาน) ลองตรวจสอบ URL ที่ส่งไปเป็น / remove_price ซึ่งเกิดจากการระบุในไฟล์ JavaScript ไม่ตรงกับหน้าเว็บ เมื่อเปิดไปที่ไฟล์ PHP ในหน้าเว็บสำหรับลบราคา ปรากฏว่า URL ที่ถูกต้องคือต้องลงท้ายด้วย / removePrice ดังนั้นก็ต้องกลับไปทำการแก้ไขในไฟล์ .js ให้เป็น URL ที่ถูกต้อง  แต่ JavaScript เมื่อแก้ไขเสร็จเราจะต้อง Refresh หน้าเว็บเพื่อโหลดสคริปต์ใหม่ ซึ่งบางทีเราก็แก้ไขแค่จุดเดียว หากไม่อยากเสียเวลาโหลดใหม่ เราก็คัดลอกโค้ดเฉพาะ Function ที่เราแก้ไข เอาไปรันใน...

ค้นหาบล็อกนี้