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

บทความ

กำลังแสดงโพสต์จาก สิงหาคม, 2021

PHP CI MANIA 0.8.4.12 เพิ่มตัวแปรใน MODEL เพื่อการกำหนดเงื่อนไขที่ง่ายขึ้ัน เพิ่มตำแหน่งการเช็ค Login ทั้ง Controller

ส่วนของ Controller     - กำหนดให้เช็ค Login ที่ระดับ   function __construct() เพื่อให้มีผลทั้งหน้าเว็บ โดยการ extends  MEMBER_Controller เมื่อต้องการเช็คสิทธิ์การ Login      - เพิ่มค่า Default ให้  $this->Model->session_name เพื่อป้องกัน session ซ้ำกันส่วนของการค้นหาในหน้าตารางแสดงรายการ ส่วนของ Model     - เพิ่มตัวแปร public  $order_by ;  สำหรับใช้เป็นการจัดเรียงตามกำหนดเอง     - เพิ่มตัวแปร public  $where_condition ; ใช้สำหรับค้นหาด้วยค่าที่กำหนดเอง ตัวอย่างการสร้างฟังก์ชั่น เพื่อดึงข้อมูลจากหลายๆตาราง มาแสดงในหน้าเดียวกัน public function list_all() {                     $results = $this->Your_Model->read($start_row, $per_page); $total_row = $results['total_row']; $search_row = $results['search_row']; $list_data = $this->setDataListFormat($results['list_data'], $start_row);         ...

แก้ปัญหา Call to undefined method Model::table()

ให้ดาวน์โหลดไฟล์สำหรับอัพเดต Patch เวอร์ชั่น  0.8.4.11 http://fastcoding.phpcodemania.com/index.php/downloads หลังจากคลายซิปแล้ว ให้คัดลอกไฟล์ CRUD_Controller.php ไปวางใน Project ของเราที่ตำแหน่งเดียวกัน ก็คือ application/core ทดลองเข้าหน้าเว็บที่เกิด error อีกครั้ง PHP  CI  MANIA   - PHP Code Generator  โปรแกรมช่วยสร้างโค้ด "ลดเวลาการเขียนโปรแกรม" ราคาสุดคุ้ม    http://www.phpcodemania.com

คอร์ส Codeigniter Framework สร้างเว็บไซต์ด้วยโปรแกรม PHP CI MANIA (เรียนส่วนตัวแบบออนไลน์)

คอร์ส Codeigniter Framework สร้างเว็บไซต์ด้วยโปรแกรม PHP CI MANIA  (เรียนส่วนตัวแบบออนไลน์)      พื้นฐาน เรียน 5 ครั้ง  (ระยะเวลา 10 ชั่วโมง)             3,000     บาท    Workshop เรียน 10 ครั้ง  (ระยะเวลา 20 ชั่วโมง)       5,000     บาท  *** รวมทั้งสิ้น ราคา 8,000  บาท *** 1. พื้นฐาน 10 ชั่วโมง     ทำความรู้จัก CodeIgniter Framework        1.1 Model       1.2 View        1.3 Controller        1.4 หน้าเว็บแรกด้วย CodeIgniter Framework               1.4.1 Xampp               1.4.2 Boostrap Framework               1.4.3 jQuery               1.4.4 MySQL   2. Workshop 20 ชั่วโม...

PHP CI MANIA : FQA การใช้งาน returnOptionList() และ createOptionList()

ความแตกต่างระหว่าง returnOptionList() กับ createOptionList() ก็คือ  returnOptionList() จะคืนค่าออกมาเป็น HTML เอาไป echo หรือ แสดงตามจุดที่ต้องการ ส่วน createOptionList()  จะแสดงค่าออกมาทันที ณ จุดที่เรียกใช้งาน การส่งค่าเข้าไปในฟังก์ชั่น returnOptionList ( $table , $field_value , $field_text , $condition = array() ) จะมีพารามิเตอร์ทั้งหมด 4 ตัวด้วยกัน $table คือ ชื่อตารางที่ต้องการดึงค่าออกมาใช้สร้าง option list $field_value คือ ฟิลด์ที่จะดึงไ่ปใส่ในแอตทริบิวต์ value="" $field_text   คือ ฟิลด์ที่จะดึงไ่ปแสดงระหว่าง <option> field_text   </option> $condition = array() จะรับค่าเป็นอาร์เรย์ แล้วนำไปเช็คในฟังก์ชั่นอีกทีว่าส่งอะไรเข้าไปบ้าง ที่ได้ใช้หลักๆก็คือ WHERE และ ORDER BY ตัวอย่างการส่งค่า WHERE $condition = array( 'where' => 'type_id = 22' ); $this->Your_Model_Name->returnOptionList ( $table ,  $field_value ,  $field_text ,  $condition ) ตัวอย่างการส่งค่า ORDER BY $condition = array( 'where' => 'type_id = 22', ...

count(): Parameter must be an array or an object that implements Countable

เจอ Error นี้ใน PHP 7.2 เป็นต้นไป ตัวอย่างนี้อยู่ในไฟล์ fpdi.php บรรทัดที่ 562 if ($this->state > 2 && count($this->parsers) > 0) {        foreach ($this->parsers as $k => $_){ . . . . . สังเกตว่า  count($this->parsers)  เป็นการนับ Array เพราะเมื่อเข้าเงื่นไข โค้ดต่อไปก็คือการวนลูปค่าใน Array ดังนั้นก็เพิ่มการตรวจสอบใน if() อีกเงื่อนไขเพิ่มเติม if ($this->state > 2 && is_array($this->parsers) && count($this->parsers) > 0) { is_array($this->parsers)  เป็นการเช็คว่าใช่ Array หรือไม่ ถ้าไม่ใช่ก็จะไม่ count() ให้เสียเวลา ปัญหาการ Error ก็จะไม่เกิดขึ้น หรือจะเขียนยาวขึ้นอีกนิดก็ได้ เพื่อใช้ PHP เวอร์ชั่นอื่นๆได้ด้วย         $count = 0;         if (isset($this->parsers) && !empty($this->parsers)){            $count = count($this->parsers);         } PHP  CI  MANIA   - PH...

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

บทความเดือนล่าสุด

แจกโค้ด 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...

สร้าง Cafe ERP ด้วย Go & Next.js

NEW RELEASE 2026 สร้าง Cafe ERP ด้วย Go & Next.js คู่มือลงมือทำระบบขายหน้าร้าน (POS) และระบบจัดการร้านค้า (ERP) จากศูนย์จนขึ้น Production จริง หนังสือ "สร้าง Cafe ERP ด้วย Go & Next.js" เล่มนี้ไม่ใช่หนังสือทฤษฎีทั่วไป แต่เป็น คู่มือระดับสถาปนิก (Architect Guide) ที่จะพาคุณลุยเขียนโค้ดทีละบรรทัด สร้างระบบบริหารจัดการร้านคาเฟ่ที่ทำงานได้เสถียร ไร้บั๊ก ปลอยภัย และที่สำคัญคือ **"ใช้งานทางธุรกิจได้จริงในประเทศไทย"** จุดเด่นที่ไม่เหมือนใครในหนังสือเล่มนี้ 🇹🇭 เกณฑ์สรรพากรไทยและภาษีมูลค่าเพิ่ม (VAT 7%) ไม่ละเลยกฎหมายสรรพากร! สอนออกแบบ Schema และเขียนโค้ดคำนวณภาษีมูลค่าเพิ่ม (VAT Inclusive/Exclusive) สำหรับการออก **ใบกำกับภาษีอย่างย่อ (ABB)** และ **ใบกำกับภาษีเต็มรูป (FULL)** รวมไปถึงสรุปรายงานภาษีตอนปิดกะ 🔌 ต่อเชื่อม Hardware & การทำงานแบบไร้เน็ต (Offline-First) เจาะ...

จัดระเบียบโค้ด ใน 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 CI MANIA : ตอนที่ 8 วิธีสร้าง Dropdown List ให้เลือกในแบบฟอร์มป้อนข้อมูล แบบ JOIN มาจากตารางอื่น (Option List)

เปิดไปที่แท็ป " ตั้งค่า " เลื่อนลงไปใน ส่วนที่ 3 เพื่อตั้งค่าการ JOIN TABLE เมื่อคลิกที่ไอคอน จะปรากฏป๊อบอัพให้เลือก Table ที่ต้องการ JOIN และกำหนดฟิลด์อ้างอิง และฟิลด์ที่ต้องการนำมาแสดงผลในช่อง Drop-down list   ในตัวอย่างนี้จะ JOIN กับตารางสมาชิก tb_members และอ้างอิงด้วย userid และดึงชื่อกับนามสกุลมาแสดง เมื่อกำหนดเรียบร้อยไอคอนฐานข้อมูลจะเปลี่ยนเป็นสีฟ้า จากนั้นก็กดสร้างไฟล์ Model / Views / JavaScript / Controller และกด Preview ดูผลลัพธ์จะได้ดังภาพต่อไปนี้ สังเกตว่าจากเดิมที่ Label ในหน้าตั้งค่าเป็น "ไอดีผู้ใช้งาน" จะกลายเป็น "ชื่อผู้ใช้งาน" แทนในหน้าแบบฟอร์มเพิ่มข้อมูล และเป็น Drop-Down list ที่สามารถค้นหารายชื่อจากตาราง tb_members ได้อีกด้วย ดูคลิปวิดีโอแนะนำการใช้งานได้ที่นี่ << กำหนด INPUT เป็นประเภทต่างๆ   การค้นหา แบ่งหน้า และการจัดเรียง » [[ PHP CI MANIA | ลดเวลาเขียนโค้ด เพิ่มเวลาบริหารจัดการได้มากขึ้น | Webpage Generator by CodeIgniter Framework ]] HOME

ขั้นตอนการเปิด Error ใน CodeIgniter 4 เมื่อข้อความ Whoops!

ขั้นตอนการเปิด Error ใน CodeIgniter 4 Whoops! We seem to have hit a snag. Please try again later... เมื่อเกิดข้อผิดพลาด CodeIgniter 4 จะไม่แสดง Error message ออกมาให้เห็น เพราะตั้งค่าไว้ให้รันในโหมดเว็บเซิร์ฟเวอร์จริง (Production Server) เพื่อค้นหาวิธีการเปิดข้อความ Error จึงลองค้นหาใน Google ด้วยคำว่า "how to debug codeigniter 4" ก็ได้วิธีมาว่า ให้แก้ไขค่าที่ไฟล์ env โดยแก้ไขชื่อไฟล์เป็น .env หากใช้ Notepad++ ก็ให้คลิกขวา แล้วเลือก Edit with Notepad++ เลื่อนหาบรรทัด CI_ENVIRONMENT และทำการเปลี่ยนค่า ให้ลบเครื่องหมาย # ด้านหน้าออก และเปลี่ยนค่า production เป็น development กลับไปที่หน้าเว็บบราวเซอร์ แล้วกดรีเฟรชหน้าเว็บอีกครั้ง (F5) ก็จะปรากฏข้อความแสดง error ออกมาให้ Debug กันได้ง่ายขึ้น * หมายเหตุ * กรณีนำไปใช้บนเว็บโฮสติ้ง หรือบนเว็บเซิร์ฟเวอร์จริง (Production Server) ให้ทำการแก้ไขค่าเป็น production ก่อนอัพโหลด ที่มา :  https://stackoverflow.com/questions/60501607/how-to-debug-codeigniter-4 PHP  CI  MANIA   - PHP Code Generator  โป...

PHP จัดตารางการแข่งขันฟุตบอล / บาสเกตบอล / กีฬาประเภทพบกันทุกทีมเหย้า-เยือน

PHP generate football schedule ในโค้ดตัวอย่างด้านล่างนี้ จะเป็นการวนลูป for อยู่ด้วยกันทั้งหมด 3 รอบ for ครั้งที่ 1  กำหนดให้นับแค่ 2  ในลูปแรกจะเป็นทีมเหย้า ในลูปที่สองจะเป็นทีมเยือน for ครั้งที่ 2 จะนับตามจำนวนทีม ในตัวอย่างมี 8 ทีมก็จะนับจนกว่าจะครบ 8 ทีม for ครั้งที่ 3 จะนับตามจำนวนทีมคู่แข่ง ในตัวอย่างมี 8 ทีม ก็จะพบคู่แข่งอีก 7 ทีม  (ซึ่งพบกัน 2 ครั้ง เหย้า-เยือน ก็จะเท่ากับ 14 ครั้ง) ข้อสังเกต เมื่อขึ้น Day 9 จะมีการสลับเอาทีมเยือนขึ้นมาเป็นทีมเหย้า Team 2 จึงเป็นเจ้าบ้านรับการมาเยือนของ Team 1 แทน สำหรับโค้ดที่ใช้เป็นตัวอย่าง มีดังต่อไปนี้ [PHP CODE] <?php $teams = array( 'Team 1', 'Team 2', 'Team 3', 'Team 4', 'Team 5', 'Team 6', 'Team 7', 'Team 8' ); $team_logo[0] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-15-512.png'; $team_logo[1] = 'https://cdn4.iconfinder.com/data/icons/pokemon-go/512/Pokemon_Go-16-512.png';...

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 จะต้...

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

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

PHP คืออะไร : มีหลักการทำงาน และสิ่งที่น่าสนใจอะไรบ้าง?

PHP คืออะไร? PHP ย่อมาจากคำว่า "Personal Home Page Tool" (ปัจจุบันได้เพิ่มเติมคำย่อใหม่โดยรวมกับตัวย่อเป็น  PHP : PHP Hypertext Preprocessor ) ซึ่งเป็นภาษาประเภท Script Language ที่ทำงานแบบ Server Side Script กระบวนการทำงานจะทำงานแบบ โปรแกรมแปลคำสั่ง  interpreter คือแปลภาษาทุกครั้งที่มีคนเรียกสคริปต์ ข้อดีคือ ไม่ต้องนำไปประมวลผลใหม่ (Compiler) เมื่อจะนำโปรแกรมไปใช้งาน หรือจะอัพเดตเวอร์ชั่นของโปรแกรม สามารถอัพโหลดขึ้นไปทับไฟล์เดิมแล้วใช้งานได้ทันที ขอเสียที่ต่างกันอย่างชัดเจนก็คือ กรณี Syntax ผิดจะรู้ก็ต่อเมื่อมีผู้ใช้งานเจอบั๊ก ภาษา PHP  จัดอยู่ในประเภท การเขียนโปรแกรมบนเว็บ (Web-based Programming) เพราะเราจะเก็บโค้ดคำสั่ง หรือสคริปต์ทั้งหมดที่เขียนขึ้นมาไว้บนเครื่องเซิร์ฟเวอร์ที่เดียว (Web Server)  และให้ผู้ใช้งาน (Client) เรียกใช้งานโปรแกรมผ่านเว็บเบราเซอร์ต่างๆ เช่น Internet Explorer, Mozilla Firefox, Google Chrome, Opera, Safari ฯลฯ เพื่อนำข้อมูลมาแสดงผลที่หน้าจอของผู้ใช้แต่ละคนนั่นเอง PHP มีอะไรน่าสนใจบ้าง? เรามาลองพูดถึงเรื่องของการสร้...

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 กา...