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

บทความ

กำลังแสดงโพสต์จาก ธันวาคม, 2019

การเรียกใช้ฟังก์ชั่นแสดงรายงานแนวนอน แสดงผลรวมผู้ใช้บริการ แยกตามประเภท

การเรียกใช้ฟังก์ชั่นแสดงรายงานแนวนอน แสดงผลรวมผู้ใช้บริการ แยกตามประเภท มาดูขั้นตอนการเรียกใช้งานฟังก์ชั่นกันแบบทีละขั้นตอนกันครับ ส่วนของ Model           public function report_summary($begin_date, $final_date) { $begin_date = setDateToStandard($begin_date); $final_date = setDateToStandard($final_date); //SET data list $left_join = "LEFT JOIN group_enrolment ON enrolment.Enrolment_id = group_enrolment.Enrolment_id"; $where_search = "WHERE begin_date >= '$begin_date' AND final_date <= '$final_date'"; //Group data by vertical_id and horizontal_id $summary_config = array( 'table_name' => 'enrolment', 'vertical_id' => 'enrolment.Enrolment_id',  'vertical_name' => 'enrolment.organization', 'horizontal_id' => 'group_enrolment.`type`',  'summary_field' => 'group_enrolment.num',  ...

ปรับแต่งเทมเพลต SB Admin 2 สำหรับใช้กับโปรเจ็กต์ Coffee Shop - PHP CI MANIA

ปรับแต่งเทมเพลต SB Admin 2 เพื่อใช้งานกับโปรเจ็กต์บริหารจัดการธุรกิจร้านกาแฟ ดาวน์โหลดเทมเพลตสำหรับ PHP CI MANIA ได้ที่ https://github.com/sunzandesign/codeigniter_bootstrap_themes ระบบบริหารจัดการธุรกิจร้านกาแฟ ตอนที่ 1 ติดตามบนยูทูปได้ที่ ระบบบริหารจัดการธุรกิจร้านกาแฟ - PHP CI MANIA การสร้างเว็บไซต์ ระบบบริหารจัดการร้านกาแฟ ด้วย PHP & MySQL http://blog.phpcodemania.com/2019/07/php-mysql-coffee-shop-management.html -------------------------------------------------------------- PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม  1,500  บาท http://fastcoding.phpcodemania.com

CodeIgniter กับ Excel, PDF, Chart สร้างรายงานแผนภูมิ ส่งออก Excel สั่งพิมพ์ PDF บนระบบ PHP CI MANIA

การใช้งานไลบรารี่ PHPExcel, TCPDF, Chart.js สำหรับ PHP CI MANIA เวอร์ชั่น PREMIUM เมื่อคลิกที่ปุ่มจะได้ผลลัพธ์แต่ละส่วนดังนี้ PHPExcel TCPDF Chart.js ดูวิดีโอสาธิตการใช้งานแต่ละส่วนได้ ที่นี่ PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม  1,500  บาท http://fastcoding.phpcodemania.com

CodeIgniter กับการเรียกใช้งาน Chart.js สร้างรายงานแผนภูมิ ในโปรแกรม PHP CI MANIA

การนำข้อมูลจาก MySQL มาแสดงในรูปแบบแผนภูมิด้วย Chart.js 1. สร้างลิงค์เพื่อเรียกไปยังหน้า Controller ที่เตรียมไว้สำหรับแสดงข้อมูลเป็นไฟล์ PDFในที่นี้จะสร้างไปที่หน้าค้นหาและแสดงรายการ list_view.php (กรณีที่ต้องการแสดงในหน้าค้นหาและแสดงรายการ ก็สามารถเขียนโค้ดแทรกลงไปที่ list_view.php ได้เลย ไม่ต้องสร้างลิงค์ไปหน้าอื่น) <div class="col-sm-12 col-md-12"> <div class="pull-right text-right"> <a href="{page_url}/export_excel" class="btn btn-success btn-lg" data-toggle="tooltip" title="ส่งออกข้อมูล"> <i class="fas fa-file-excel"></i></span> Excel </a> <a href="{page_url}/print_pdf" target="_blank" class="btn btn-danger btn-lg" data-toggle="tooltip" title="พิมพ์ข้อมูล"> <i class="fas fa-file-pdf"></i></span> PDF </a> <a href="{page_url}...

CodeIgniter กับการเรียกใช้งาน TCPDF สร้างรายงาน PDF ในโปรแกรม PHP CI MANIA

การสั่งพิมพ์รายงานแบบ PDF 1. สร้างลิงค์เพื่อเรียกไปยังหน้า Controller ที่เตรียมไว้สำหรับแสดงข้อมูลเป็นไฟล์ PDFในที่นี้จะสร้างไปที่หน้าค้นหาและแสดงรายการ list_view.php <div class="col-sm-12 col-md-12"> <div class="pull-right text-right"> <a href="{page_url}/print_pdf" target="_blank" class="btn btn-danger btn-lg" data-toggle="tooltip" title="พิมพ์ข้อมูล"> <i class="fas fa-file-excel"></i></span> PDF </a> <a href="{page_url}/export_excel" class="btn btn-success btn-lg" data-toggle="tooltip" title="ส่งออกข้อมูล"> <i class="fas fa-file-excel"></i></span> Excel </a> </div> </div> 2. สร้างไฟล์ Pdf.php ไว้ที่ application/libraries/ ซึ่งจะเรียกไลบรารี่ที่เราดาวน์โหลดเก็บไว้ใน application/third_party มาใช้อีกทีหนึ่ง (ดาวน์โหลดไลบ...

CodeIgniter กับการเรียกใช้งาน PHPExcel ในโปรแกรม PHP CI MANIA

การส่งข้อมูลออกเป็นไฟล์ Excel 1. สร้างไฟล์ Excel.php ไว้ที่ application/libraries/ ซึ่งจะเรียกไลบรารี่ที่เราดาวน์โหลดเก็บไว้ใน application/third_party มาใช้อีกทีหนึ่ง (ดาวน์โหลดไลบรารี่ที่เกี่ยวข้องได้ที่  https://github.com/sunzandesign/PHP_CI_MANIA_Libraries ) <?php if (!defined('BASEPATH')) {     exit('No direct script access allowed'); } require_once APPPATH."/third_party/PHPExcel.php"; class Excel extends PHPExcel{     public function __construct(){         parent::__construct();     } } 2. ในส่วนของ Controller ให้โหลดไลบรารี่ที่สร้างไว้มาใช้งาน     public function export_excel() {         // load excel library         $this->load->library('Excel'); $results = $this->Student->read(0, 1000);//1000 คือจำนวนข้อมูลที่ต้องการสูงสุด $data_lists = $this->setDataListFormat($results['list_data'], 0);         $...

PHP กับวิธีรับค่าพารามิเตอร์ GET จาก url ให้ครบถ้วน ก่อน Redirect ไปยังหน้าอื่น

หลายๆครั้งที่เราค้นหาคำสั่งหรือฟังก์ชั่นที่ PHP มีให้ไม่เจอ ก็ต้องพยายามเขียนฟังก์ชั่นขึ้นมาเอง http_build_query() ฟังก์ชั่นนี้ก็เช่นกัน ถ้าหาไม่เจอก็คงต้องเขียนขึ้นเองตามเคย $other_param = $_GET; unset($other_param['url']); $url = isset($_GET['url']) ? urldecode($_GET['url']) : ''; $url .= '&'. http_build_query($other_param); คำสั่งด้านบนนี้คือการรับค่าสำหรับ redirect ไปยังหน้าอื่น แต่พอดีว่าต้องพ่วงค่า $_GET ตัวอื่นๆไปด้วย ถ้ารับแค่ $_GET['url'] ค่าอื่นๆจะหายไป ก็เลยต้อง build ค่าเพิ่มโดยตัดตัวที่ใช้หลักๆคือ url ออกไปก่อนด้วย unset() แล้วจึงสั่ง build ค่าขึ้นมาใหม่เพื่อส่งไปยังหน้าต่อไปได้ครบถ้วนนั่นเอง ------- http_build_query (PHP 5, PHP 7) Generate URL-encoded query string https://www.php.net/manual/en/function.http-build-query.php PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม  1,500  บาท http://fastcoding.phpcodem...

PHP CI MANIA - การใช้งานคุณสมบัติใหม่ UPDATE Code ไปยัง Project โดยไม่ต้องคัดลอกทีละไฟล์

เพิ่มความสามารถใหม่ UPDATE ไฟล์ที่มีการ Generate ล่าสุดตามวันที่ที่กำหนด ไปยัง example_project หรือ โฟลเดอร์โปรเจ็กต์ที่ต้องการได้ สมาชิกอัพเดตได้ที่ http://fastcoding.phpcodemania.com/index.php/downloads วิดีโอแนะนำการใช้งาน PHP CI MANIA - การใช้งานคุณสมบัติใหม่ UPDATE Code ไปยัง Project โดยไม่ต้องคัดลอกทีละไฟล์ PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม  1,500  บาท http://fastcoding.phpcodemania.com

การนำโค้ดที่ Generate จาก PHP CI MANIA ไปใช้งานในโปรเจ็กต์อื่นๆ ที่ไม่ใช่ Template ที่เตรียมมาด้วย

การนำโค้ดที่ Generate จาก PHP CI MANIA ไปใช้งานในโปรเจ็กต์อื่นๆ ที่ไม่ใช่ Template ที่เตรียมมาด้วยกับด้วยโปรแกรม จะต้องตั้งมีไฟล์และตั้งค่าดังต่อไปนี้ ส่วนที่ 1 ต้องมีโฟลเดอร์และไฟล์ใน assets ดังนี้ ส่วนที่ 2 ในโฟลเดอร์ของ application ตั้งค่าดังต่อไปนี้ เปิดไฟล์ application/config/autoload.php และเพิ่มส่วนของ libraries และ helper เปิดไฟล์  application/config/config.php  และเพิ่มโค้ดด้านล่างนี้ไว้ส่วนท้าย /*   |--------------------------------------------------------------------------   | HMVC Modular   |--------------------------------------------------------------------------   |   | Modules location  */ $config['modules_locations'] = array(     APPPATH . 'modules/' => '../modules/', ); ส่วนที่ 3 ต้องมีโฟลเดอร์และไฟล์ใน application ดังนี้ กรณีที่ขาดไฟล์ที่จำเป็นต้องใช้จะพบ Error แจ้งเตือน สามารถคัดลอกไฟล์มาจากโฟลเดอร์ example_project ที่มาพร้อมตัวโปรแกรม PHP CI MANIA มาใช้ได้เลยครับ สำคัญมาก ส่วนสำ...

แจก Bootstrap Template สวยๆ สำหรับใช้งานกับ PHP CI MANIA (CodeIgniter)

แจก Bootstrap Template สวยๆ สำหรับใช้งานกับ PHP CI MANIA ดาวน์โหลดได้ที่ https://github.com/sunzandesign/codeigniter_bootstrap_themes วิธีติด Bootstrap Template (AdminLTE) เพิ่มเติม เพื่อใช้งานกับ PHP CI MANIA https://www.youtube.com/watch?v=gzwKUPY-XG4 การเปลี่ยน Template ของ Project ด้วย Bootstrap Template https://www.youtube.com/watch?v=kFa6aUA-HOM การนำโค้ดที่ Generate จาก PHP CI MANIA ไปใช้งานในโปรเจ็กต์อื่นๆ ที่ไม่ใช่ Template ที่เตรียมมาด้วย (ใช้งานกับโปรเจ็กต์ CodeIgniter งานเก่าๆ) http://blog.phpcodemania.com/2019/12/how-to-use-code-generate-php-ci-mania-another-project.html PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม http://fastcoding.phpcodemania.com

PHP CI MANIA การแก้ไขโค้ดหน้าแสดงรายละเอียด ให้ข้อมูลจากฟิลด์ Text แสดงข้อความหลายบรรทัด

การขึ้นบรรทัดใหม่หลายบรรทัดในส่วนของหน้าเว็บ Preview คู่มือ PHP CI MANIA http://blog.phpcodemania.com/p/php-ci-mania.html PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" สนใจสั่งซื้อราคาสุดคุ้ม  1,500  บาท http://fastcoding.phpcodemania.com

PHP CI MANIA เพิ่มช่อง INPUT ค้นหาเพิ่มเติมจาก Dropdown List ที่ Generate ให้ (Option List)

การค้นหาในหน้าแสดงรายการ นอกจากจะใช้กล่องค้นหาที่เตรียมไว้ให้โดยเลือกฟิลด์ที่ต้องการจาก Drop-down list เรายังสามารถเพิ่มเติมช่องค้นหาได้เองโดยเขียนโค้ดเพิ่ม 3 ส่วนด้วยกัน ยกตัวอย่างเช่น หน้าแสดงรายชื่อนักเรียน Student ในโมดูล demo จะประกอบด้วยไฟล์ดังนี้ 1. แก้ไขที่ส่วนของ Views ที่ไฟล์ demo/views/student/list_view.php     ไปที่ส่วนของกล่องค้นหา แทรกโค้ดต่อไปนี้ก่อนปุ่ม "ค้นหา" <div class="form-check form-check-inline"> <input  type="radio" {check1} name="sex" id="sex1" value="1" class="form-check-input" autocomplete="off"  /> <label class="form-check-label" for="sex1">ชาย</label> </div> <div class="form-check form-check-inline"> <input  type="radio" {check2} name="sex" id="sex2" valu...

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

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

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

การทำ 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 ...

การสร้างเว็บไซต์ในปี 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 : รวมลิงค์ แจกฟรี!! ตัวอย่างโปรเจ็กต์ ที่พัฒนาด้วย 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...

จัดระเบียบโค้ด ใน Notepad++ (Auto indentation plugin)

เวลาเขียนโค้ด แล้วไม่ได้จัดรูปแบบ หรือเอาโค้ดจาก Text Editor หนึ่งมาใช้ในอีกตัวหนึ่งก็มีโอกาสที่ Tab หรือ Space bar จะต่างกัน แล้วเราจะมานั่ง TAB เองก็คงไม่ไหว จึงจำเป็นต้องหา Plugin เข้ามาช่วย ลองค้นดูก็เจอกับกระทู้นี้ >> แม้หน้าตาจะไม่ตรงกันแต่หลักๆก็คือเพิ่ม Plugins เข้าไปชื่อ Indent By fold อ่านเต็มๆได้ที่นี่ https://softwarerecs.stackexchange.com/questions/1496/auto-indentation-plugin-for-notepad

PHP เบื้องต้น | รวมวิดีโอสอนเขียนโปรแกรม PHP & MySQL

1. พื้นฐาน PHP     1.1  โครงสร้างการเขียน PHP ร่วมกับ HTML     1 .2  Selection Structure : การเขียนโปรแกรมแบบทางเลือก     1. 3  ตัวแปร (Variable) และ ค่าคงที่ (Constant)     1.4  ตัวดำเนินการ (Operator)     1.5  เครื่องหมาย Single Quote / Double Quote และ Escape Sequence     1.6  Repetition Structure (การเขียนโปรแกรมวนซ้ำ)          1.7  การแทรกโค้ PHP ส่วนต่างๆของ HTML     1.8  PHP Function 2. PHP MySQLi CRUD : การจัดการฐานข้อมูล MySQL เบื้องต้น      2.1 : การบันทึกข้อมูลด้วย MySQLi Function      2.2 การค้นหาและแสดงข้อมูลในรูปแบบตาราง 1/2     2.3  การค้นหาและแสดงข้อมูลในรูปแบบตาราง 2/2      2. 4 การแก้ไขข้อมูลด้วยคำสั่ง UPDATE     2. 5 การลบข้อมูลจากฐานข้อมูล     2. 6 การป้องกัน SQL Injection ด้วยการใช้ prepare และ bindparam           2.7 กา...

PHP CI MANIA : ตอนที่ 12 การใช้งานระบบสมาชิกกำหนดสิทธิ์เข้าใช้งานด้วย Login SESSION

เริ่มจากการสร้างหน้าเว็บแบบไม่กำหนดสิทธิ์ และกำหนดสิทธิ์ให้ สมาชิกเท่านั้น ที่เข้าหน้าเว็บที่กำหนดได้     1. ทดลองสร้างหน้าเว็บแบบปกติ เมื่อกำหนดชื่อต่างๆเรียบร้อย ก็คลิกสร้างไฟล์ Models, Views, JS และ Controller ให้เรียบร้อย (สำหรับ Version 0.6 จะมีปุ่ม " สร้างไฟล์ทั้งหมด ")    2. จากนั้นคลิกลิงค์เพื่อดูตัวอย่าง(ในหน้า Controller) จะพบกับหน้าเว็บที่เราสร้างเอาไว้ จะเห็นว่า สามารถเข้าได้ปกติ     3. สลับไปที่หน้า "ตั้งค่า" และคลิกเลือก "Login Require" เพื่อกำหนดว่า จะเข้าหน้าเว็บนี้ได้ จะต้องผ่านการ Login ก่อนเท่านั้น จากนั้นก็คลิกสร้างไฟล์ Models, Views, JS และ Controller ให้เรียบร้อย (สำหรับ Version 0.6 จะมีปุ่ม " สร้างไฟล์ทั้งหมด ")    4. จากนั้นคลิกลิงค์เพื่อดูตัวอย่าง(ในหน้า Controller) จะพบกับหน้าเว็บที่ ต้อง Login ก่อน จึงจะสามารถเข้าใช้งานได้    สำหรับ รหัสที่ใช้ทดสอบ นั้นได้กำหนดค่าเบื้องต้นไว้ให้ดังนี้    - Admin     ใช้ชื่อล็อกอิน admin รหัสผ่าน 123456     -...

วิธีแก้ไข 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 ที่เราแก้ไข เอาไปรันใน...

SELECT ซ้อน SELECT (GROUP BY, HAVING, SUBQuery, COUNT)

เมื่อต้องการนับจำนวนรายการตามเงื่อนไข แต่ก็จำเป็นต้องใช้ GROUP BY เพราะการใช้ COUNT + DISTINCT ไม่สามารถดึงข้อมูลตามเงื่อนไขได้  อยากจะนับจำนวนสมาชิกที่ชำร ะเงิน ถ้าใช้ COUNT() ก็จะออกมาหมด ทำให้ได้จำนวนเกินจากความเป ็นจริง เพราะสมาชิกบางคนชำระมากกว่ า 1 ครั้ง ก็เลยต้องเอามา GROUP กันด้วย รหัสสมาชิกก่อน เพื่อตัดเรคอร์ดที่ซ้ำกันออ กไป สมาชิกจะชำระกี่ครั้ง ก็นับเป็น 1 คน (เพราะเป็นสมาชิกคนเดียวกัน ) จะเห็นว่า จะได้ยอดที่ถูกต้อง 139 แต่ข้อมูลมันแจกแจงรายการต้ อง 139 แถว ซึ่งเราไม่ได้อยากได้รายละเ อียด แค่อยากนับจำนวนเท่านั้นจะท ำไงล่ะทีนี้ ก็จัดการ SELECT ครอบ SELECT ไว้เลย ซึ่งก็คือการทำ SubQuery นั่นเอง ก็จะออกมาเรคอร์ดเดียว เป็นจำนวนที่ต้องการนำไปใช้ งานได้ทันที จริงๆแล้วเราใช้ DISTINCT ได้นะ ถ้าเงื่อนไขมีแค่เท่านี้ ไม่จำเป็นต้อง SubQuery ดูสิ พอนับแบบตัดรายการซ้ำกันออก ก็ได้ 139 พอดิบพอดีเลย ใช่ครับ ถ้าเงื่อนไขมีเพียงเท่านี้ก ็ใช้ได้เลย แต่ถ้ามีเงื่อนไขอื่นล่ะ??? ถ้าจะนับเฉพาะสมาชิกที่ชำระ เงินตั้งแต่ 150...

MySQL คำสั่ง SQL จัดเรียงคำตามตัวอักษร ภาษาไทย ในฟิลด์ที่กำหนด Collation เป็น utf-8

การจัดเรียงข้อมูลตามลำดับตัวอักษรไทย   CONVERT( name USING tis620 ) ASC การเรียงลำดับตัวอักษรแบบ tis-620 ในการเขียนโปรแกรม PHP เพื่อแสดงข้อมูลจากฐานข้อมูล MySQL การเขียนคำสั่ง SQL ให้จัดเรียงลำดับนั้น เราจะใช้ ORDER BY  และกำหนดฟิลด์ที่ต้องการจัดเรียงลำดับ เช่น ในตัวอย่างนี้จะเป็นการจัดเรียงตามลำดับตัวอักษรของชื่อเมนู นั่นก็คือฟิลด์ name นั่นเอง แต่ในขั้นตอนการสร้างฐานข้อมูลนั้น เราได้กำหนด Charset ของตารางและฟิลด์เป็นการจัดเรียง Collation แบบ utf-8 เอาไว้เพื่อให้รองรับภาษาแบบมาตรฐาน ดังนั้นเมื่อเขียนโปรแกรมสั่ง ORDER BY name ASC ก็จะมีการจัดเรียงที่จะให้คำที่มีสระนำหน้าอยู่หลัง ฮ. นกฮุก ไปเสียหมด จะเห็นว่าชื่อเมนูหรือสินค้าที่มี ข นำหน้าจะมาเป็นลำดับแรก ทั้งที่จริงๆแล้ว มีสินค้าที่เป็น ก อยู่หลายรายการ เพียงแต่ว่ามีสระนำหน้าอยู่เท่านั้นเอง จากรูปด้านบน จะมีรายการที่เป็น ก อยู่ 3 รายการ คือเมนู โกโก้ ต่างๆ แต่เพราะมีสระโอ นำหน้า จึงทำให้การจัดเรียงแบบ utf-8 ให้อยู่ในลำดับท้าย เพื่อแก้ไขปัญหานี้ การเขียนโปรแกรมเพื่อ ORDER BY จะต้...

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