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

บทความ

กำลังแสดงโพสต์จาก มีนาคม, 2017

PHP แสดงตารางแนวตั้ง แบบกระดาษคำตอบ

ผลลัพธ์ที่ได้ ปกติแล้วเมื่อเราใช้ PHP วนลูปข้อมูลจากฐานข้อมูล MySQL ด้วย while() ข้อมูลจะถูกดึงออกมาเรียงกัน และเราสามารถแบ่งข้อมูลในแนวนอนด้วย array_chunk()  หรืออาจจะใช้วิธีหารเอาเศษ เพื่อเทียบดูว่าเมื่อไหร่จะขึ้น </tr><tr> หรือปิดเปิดบรรทัดใหม่ แต่ในกรณีแนวตั้ง หลังจากที่เราใช้ while() ลูปดึงข้อมูลมาแล้วนั้น ผมจะใช้วิธีการนับจำนวนอาร์เรย์ทั้งหมด แล้วเอามาหารตามจำนวนแถวที่ต้องการ เพื่อสร้างอาร์เรย์ชุดใหม่ ที่ได้จำนวนคอลัมน์ และลำดับของข้อมูลตามการจัดเรียงตารางแนวตั้งที่ต้องการ ซอร์สโค้ด PHP + PDO with MySQL <?php $user = 'tobedev'; $pass = 'dev.1234'; try {     $dbh = new PDO('mysql:host=localhost:33065;dbname=tobedev_example', $user, $pass); } catch (PDOException $e) {     print "Error!: " . $e->getMessage() . "<br/>";     die(); } $stm = $dbh->prepare("SELECT name, price FROM tb_product LIMIT 14"); $stm->execute(); $no        = 1; $data     = array(); while($result =

เก่งคอมพิวเตอร์ แต่เขียนโปรแกรมไม่เป็น!!

ถามว่าเก่งคอมแต่เขียนโปรแกรมไม่เป็นผิดไหม บอกได้เลยว่าไม่ผิดครับ แต่ในยุคนี้ บอกตรงๆว่าจำเป็นต้องเขียนให้ได้อย่างน้อยก็คือ Web Application ด้วยภาษาอะไรก็ได้สักภาษาหนึ่งครับ เมื่อคนทั่วไปคาดหวังว่าโปรแกรมเมอร์ต้องซ่อมคอมพิวเตอร์เป็น ดังนั้น การที่จะคาดหวังว่าช่างซ่อมคอมพิวเตอร์ ต้องเขียนโปรแกรมเป็นก็เช่นกัน (บางคนคิดไปไกลถึงขนาดจะให้แฮกเฟซบุ๊ก หรืออีเมลให้ได้ด้วย >__<) การเขียนโปรแกรมจัดการฐานข้อมูล (PHP + MySQL) หลักๆเลยก็มีที่ต้องเรียนรู้ให้ได้ก็คือ CRUD = Create, Read, Update, Delete เป็น 4 ส่วนหลักที่ต้องทำให้ได้ 1. Create คือการเพิ่มข้อมูล 2. Read คือการนำข้อมูลมาแสดง 3. Update คือการแก้ไขข้อมูล 4. Delete คือการลบข้อมูล แต่สิ่งสำคัญจริงๆของการเขียนโปรแกรมคือ ประสบการณ์ การลองผิดลองถูก การพูดคุยปะทะคารมกับผู้ใช้งานเพื่อหาข้อตกลงถูกต้องตรงใจที่สุดตามที่ผู้ใช้ต้องการ ดังนั้นการจะเขียนโปรแกรมให้ใช้งานได้ดีจริงๆนั้น คือการเก็บเกี่ยวประสบการณ์ เรียนรู้ความผิดพลาด และแก้ไขมัน หาทางจัดการกับปัญหานั้นๆไม่ให้เกิดขึ้นอีก หลายคนอาจจะแปลกใจว่าฝึกเขียนโปรแกรมมาตั้งนาน แ

PHP + Fullcalendar กับ MySQL

หลักการทำงาน เรียกข้อมูลจากตาราง tb_event ด้วยฟังก์ชั่นของ MySQLi ข้อมูลจากฐานข้อมูลจะถูกวนลูปเก็บไว้ใน $data และจะถูกส่งไปที่ Fullcalendar ด้วยการแปลงข้อมูลจาก PHP ให้อยู่ในรูปแบบ JSON อาร์เรย์ด้วยฟังก์ชั่น json_encode()

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

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

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

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 ระบบตะกร้าสินค้า ระบบสั่งซื้อ มีระบบตัดสต๊อก, สั่งซื้อวัตถุดิบคงเหลือ http://www.thaicreate.com/community/php-shooping-ca

การสร้างเว็บไซต์ในปี 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  CI  M

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 คำสั่ง echo คืออะไร

คำสั่ง echo คือ Function หนึ่งของ PHP ที่ใช้แสดงข้อมูลออกมาในหน้าเว็บ ไม่ว่าจะเป็น ตัวอักษร ตัวเลข หรือตัวแปรต่างๆ ที่เก็บข้อมูลที่ต้องการแสดงผล ถ้าเป็นการร่ายเวทมนต์ก็เหมือนการเสกให้ปรากฏออกมา "Aparecium..!! " (อะ-พา-เร-ซี-อึม..!!)  ทันใดนั้นหน้ากระดาษที่ว่างเปล่า ก็ค่อยๆปรากฏตัวอักษรขึ้นมาให้เห็น ตัวอย่างการใช้งาน <?php     echo "Hello World";     $number = 2016;     echo $number; ?> ดูข้อมูลเพิ่มเติมได้ที่  echo Function PHP  CI  MANIA   -  PHP Code Generator  โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม เขียนโปรแกรมง่ายและสะดวกขึ้น สนใจสั่งซื้อราคาสุดคุ้ม >>  http://fastcoding.phpcodemania.com/

กด Start ตรง mysql ใน XAMPP ไม่ได้ แก้ไขยังไงดี?

ข้อความ Error ที่ปรากฏดังนี้ 6:37:41  [mysql] This may be due to a blocked port, missing dependencies, 6:37:41  [mysql] improper privileges, a crash, or a shutdown by another method. 6:37:41  [mysql] Press the Logs button to view error logs and check 6:37:41  [mysql] the Windows Event Viewer for more clues 6:37:41  [mysql] If you need more help, copy and post this 6:37:41  [mysql] entire log window on the forums ต้องบอกก่อนว่าเคสนี้เกิดขึ้นเมื่อผมรัน XAMPP แบบ Portable แล้วดันไปขยับสาย USB การเชื่อมต่อก็เลยหลุดไป หลังจากถอดสาย USB แล้วเสียบใหม่ XAMP ก็รันได้แค่ Apache อย่างที่เห็นในภาพ หลังจากนั้นสิ่งที่ทำอย่างแรกก็คือ คัดลอก Error ไปค้นในเว็บแล้วลองทำไปเรื่อยๆ จนกว่าจะหาวิธีได้ xampp MySQL does not start https://stackoverflow.com/questions/18177148/xampp-mysql-does-not-start เว็บแรกทำให้รู้ว่าน่าจะเกี่ยวกับ Port ก็เลยลองเปลี่ยนเป็นพอร์ตอื่นก็ Start ได้ทันที You also need to change port 3306 to 3307 in xampp\php\php.ini แต่...นี่ยังไม่ใช่ที่ต้อ

จัดระเบียบโค้ด ใน 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 + Fullcalendar กับ MySQL

หลักการทำงาน เรียกข้อมูลจากตาราง tb_event ด้วยฟังก์ชั่นของ MySQLi ข้อมูลจากฐานข้อมูลจะถูกวนลูปเก็บไว้ใน $data และจะถูกส่งไปที่ Fullcalendar ด้วยการแปลงข้อมูลจาก PHP ให้อยู่ในรูปแบบ JSON อาร์เรย์ด้วยฟังก์ชั่น json_encode()

PHP Array เขียนโปรแกรมตัดเกรดด้วย PHP เพื่อการเรียนรู้การใช้งาน Array

โค้ดต่อไปนี้จะเป็นการสร้างฟังก์ชั่นเพื่อตัดเกรด โดยใช้ความสามารถของตัวแปร Array ในการเก็บเกรดต่างๆเอาไว้ทั้งหมด 10 ตำแหน่ง และข้อความ Error ในตำแหน่งที่ 11 <?php // ฟังก์ชั่นรับค่าคะแนน และคืนค่าเป็น เกรดที่ได้ function calculate_grade($score){ $grade = array('F', 'F', 'F', 'F', 'F', 'D', 'C', 'B', 'A', 'A', 'A', 'Error'); if($score > 100 || $score < 0){ $cal = 11; }else{ $cal = floor($score / 10); } return $grade[$cal]; } // ทดสอบฟังก์ชั่นโดยการส่งค่าทุกหลักเข้าไป echo '<br/>', $number = 0, ' = ', calculate_grade($number); echo '<br/>', $number = 8, ' = ', calculate_grade($number); echo '<br/>', $number = 16, ' = ', calculate_grade($number); echo '<br/>', $number = 21, ' = ', calculate_grade($number); echo '<br/>', $number = 39, ' = ', calculate_

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