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

บทความ

กำลังแสดงโพสต์จาก พฤษภาคม, 2018

แก้ปัญหา Control Panel ของ Xampp เปิดไม่ขึ้น - Xampp control panel is not showing

หลังจากดับเบิ้ลคลิกเปิดโปรแกรม Xamp Server หน้าจอแว๊บๆ แต่ไม่ปรากฏอะไรออกมาเลย หลังจากพยายามคลิกอยู่นาน เจ้า Xampp Control Panel ก็ไม่ขึ้นมาให้เห็น ก็เลยตัดสินใจไปค้นใน Google ด้วยคีย์เวิร์ดนี้ " Xampp control panel is not showing " แล้วก็ได้วิธีแก้จาก StackOverFlow.Com เจ้าเก่าเจ้าเดิม ก็มีคนบอกเอาไว้ว่า ก็ไปสั่งให้มันเต็มจอซะสิ!! ดังนั้นก็ไม่รีรอ รีบกดคีย์พิฆาตทันที Ctrl + Alt + Delete เนื่องจากระบบปฏิบัติการที่ใช้เป็น Windows 10 ดังนั้นหน้าตาก็จะต่างจากในกระทู้นิดหน่อย ให้เลื่อนหา xamp-control-panel.exe  จากนั้นก็คลิกขวา แล้วสั่ง Expand ให้คลิกขวาเลือก XAMPP Control Panel เวอร์ชั่นที่เปิดหน้าต่างไม่ขึ้นนั้น แล้วเลือกคำสั่ง Maximize หน้าต่าง Xampp Control Panel ก็จะเด้งขึ้นมาเต็มหน้าจอ พร้อมให้เรากดปุ่ม Start เพื่อเริ่มใช้งานเว็บเซิร์ฟเวอร์ได้ตามปกติ ---------- สำหรับ Windows 10 ให้คลิกที่เมนู Options ด้านบนสุด แล้วคลิกเลือก Always on top และ คลิกออก อีกครั้ง เมนู Maximize จะปรากฏออกมา PHP  CI  MANIA   -  PHP Code ...

แก้ปัญหา JavaScript ไม่สามารถแสดงใน TEXTAREA ได้

ทำไม View Code แล้วเห็น และใน Textarea กลับไม่แสดงค่าอะไรเลย??? สังเกตว่าเปิด Console แล้วตรวจสอบโครงสร้าง HTML ก็มีโค้ด JavaScript อยู่นะ แต่ทำไมใน <textarea></textarea> ถึงว่างเปล่าไม่มีอะไรออกมาเลย??? ก็เลยลองค้นด้วยคีย์เวิร์ดง่ายๆ "how to display javascript in textarea" (จริงๆก็ไม่ง่ายๆนะ ค้นหาด้วยคีย์เวิร์ดหลายคำมาก กว่าจะลงตัวที่ประโยคนี้) ก็ได้พบหนทางสว่าง นั่นก็คง ต้องแปลงวงเล็บเปิด-ปิดของ script ให้เป็นตัวโค้ดพิเศษก่อน ซึ่งนอกจากใช้ htmlentities() ก็ยังมี htmlspecialchars() ให้เรียกใช้อีกฟังก์ชั่น  หลังจากนั้น ลอง CTRL + F5 เพื่อรีเฟรชหนักๆ ก็ปรากฏโค้ดออกมาในที่สุด (ดีใจจนน้ำตาแทบไหล ปิดงานได้สักที TT__TT ) ขอให้ทุกคนมีความสุขในการเขียนโปรแกรม PHP และสนุกไปกับการแก้บั๊กนะครับ ^O^ อ้างอิง https://stackoverflow.com/questions/6130097/how-come-when-i-display-javascript-in-a-textarea-it-executes PHP  CI  MANIA   -  PHP Code Generator  โปรแกรมช่วยสร้างโค้ด ลดเวลาการเขียนโปรแกรม เขียนโปรแกรมง่ายและสะดวก...

PHP - มาลองเขียนโค้ดแก้โจทย์ปัญหาด้วยการวนลูปหาค่าตัวแปรแต่ละตัว

มาลองเขียนโค้ดแก้โจทย์ปัญหาด้วยการวนลูปกันดูครับ ด้านล่างนี้คือโค้ดเริ่มต้นที่ผมมีให้ครับ ลองไปต่อกันดู หรือถ้าใจร้อน จะเลื่อนลงไปล่างสุดเพื่อดูโค้ดที่ผมเขียนเอาไว้เลยก็ย่อมได้ ^O^ <?php $worm     = 7; $clock     = 6; $flower = 2; $check1 = ($worm + $worm + $worm == 21); $check2 = ($clock + $clock + $worm == 19); $check3 = ($flower + $clock + $worm == 15); $result = "???"; echo "<br/>$worm + $worm + $worm = 21 (", $check1 ? 'true' : 'false',")"; echo "<br/>$clock + $clock + $worm = 19 (", $check2 ? 'true' : 'false', ")"; echo "<br/>$flower + $clock + $worm = 15 (", $check3 ? 'true' : 'false', ")"; if($check1 == true && $check2 == true && $check3 == true){     $result = "($worm-$flower) + ($flower *2) * $clock = <b>".( ($worm-$flower) + ($flower *2) * $clock) . "</b>"; } ...

บันทึกการผจญภัยครั้งใหม่ : ทดลองรัน GO Lang Mobile บนมือถือ Android

ลองเขียน Go Lang Mobile ต้องตั้งค่าอะไรบ้าง? เริ่มจากดาวน์โหลด และติดตั้ง Go https://golang.org/doc/install ดาวน์โหลดและติดตั้ง GoLang Mobile https://github.com/golang/go/wiki/Mobile#tools พอถึงขั้นตอน  Building and deploying to Android รันไม่ผ่าน!! https://developer.android.com/ndk/guides/ ต้องไปติดตั้ง Android Studio ก่อนเพื่อโหลด NDK https://developer.android.com/studio/ หลังจากนั้นก็หา PATH ndk-bundle บน Windows 10 ไม่เจอ https://stackoverflow.com/questions/27522184/android-ndk-default-location ต้องรัน NDK ก่อนเริ่มคำสั่ง Building อีกครั้ง https://stackoverflow.com/questions/42430609/gomobile-command-error-no-android-ndk-path-is-set/42914874  หลังจาก Building เสร็จจะได้ไฟล์ basic.apk ที่โฟลเดอร์ชื่อ Users ของ Windows 7 หลังจากนั้นก็ลองคำสั่งเกี่ยวกับ Android Debug Bridge (adb) ซึ่งจะไม่พบเพราะไม่ได้เซ็ต PATH ของ Android SDK https://stackoverflow.com/questions/2517493/adb-command-not-found-in-linux-environment พอลองรันดู ปรากฏ...

มาฝึกแฮกเว็บ ก่อนที่เว็บเราจะถูกแฮก!! (PHP Web Application Security)

รวมบทความแนะนำวิธีการแฮกเว็บไซต์และการป้องกัน PHP Web Application Security  สรุป PHP Web Application Security  Nebula เลเวล 09: มาลองแฮกช่องโหว่ใน PHP เข้าใจ Web Security: จัดเก็บ JWT ไว้ใน local storage หรือ cookies ดี? SQL Injection เทคนิค การHack Web 2. String Based SQL Injection สิ่งที่ทุกคนต้องรู้ ในการเขียนโปรแกรมด้วย PHP กับ MySQL หากไม่อยากให้ระบบที่เขียนนั้นถูก HACK ได้ !!!  Testing for SQL Injection (OTG-INPVAL-005) Cross Site Scripting (XSS) Cross-site Scripting (XSS) วิธีการยอดนิยมที่แฮคเกอร์รู้จักกันดี บทเรียน hack มั่ว (ตอนที่ 1) การ xss วิธีตรวจสอบเว็บไซต์ที่โดน Hack #9 https://www.owasp.org/index.php/Cross-site_Scripting_(XSS) Cross Site Request Forgery (CSRF) การโจมตีเว็บแบบ Cross Site Request Forgery ทำความเข้าใจกับ CSRF (Cross Site Request Forgery) ตอนที่ 1 ทำเว็บไซต์ให้ปลอดภัย Codeigniter Security https://www.owasp.org/index.php/Testing_for_CSRF_(OTG-SESS-005) ใครที่มีเรื่องราวน่าสนใจ แบ่งปันกัน...

PHP กับการเข้ารหัสข้อมูลรหัสผ่านด้วย md5() และ password_hash()

เข้ารหัสข้อมูลรหัสผ่านด้วย password_hash() สำหรับการเข้ารหัสด้วย md5() เพียงอย่างเดียวสามารถถอดรหัสได้แล้วด้วยฐานข้อมูลที่มีข้อมูลรหัสจำนวนมหาศาลดังนั้น PHP จึงได้สร้างฟังก์ชั่นใหม่ขึ้นมารองรับการเข้ารหัสที่ดีกว่าเดิม แต่นั่นก็ไม่ใช่เหตุผลให้เราทิ้งฟังก์ชั่น md5() ไปเลยเสียทีเดียว เพราะยังมีประโยชน์ในการเข้ารหัสที่ได้รหัสเหมือนเดิมทุกครั้ง และใช้แค่ 32 หลักเท่านั้น แต่เพื่อความปลอดภัยของรหัส เราก็จำเป็นจะต้องทำการผสมผสานข้อมูลใหม่ เพื่อให้เมื่อแกะออกมาแล้วไม่สามารถเข้าใจมันได้ด้วยนั่นเอง โค้ดตัวอย่างการเข้ารหัส md5() ก่อนเรียกใช้ password_hash() อีกครั้ง <?php header('Content-Type: text/html; charset=utf-8'); function utf8_strrev($str) { preg_match_all('/./us', $str, $ar); return join('', array_reverse($ar[0])); } function pass_encrypt($pass, $show = false) { //you secret word $key1    = 'asdfasf'; $key2    = 'asdfasdf'; $loop    = 1; $reverse = utf8_strrev($pass); if ($show == true) { echo '<br...

PHP กับการแทนที่ข้อความ มาดูกันว่ามีฟังก์ชั่นอะไรให้ใช้บ้าง

PHP Replace Function 1. str_replace() Replace all occurrences of the search string with the replacement string 2. substr_replace() Replace text within a portion of a string 3. strtr() Translate characters or replace substrings 4. preg_replace() Perform a regular expression search and replace แต่ละฟังก์ชั่นแตกต่างกันอย่างไร เริ่มจาก => 1. str_replace()   เรามักจะคุ้นเคยกับการใช้เพื่อแทนที่คำบางคำให้เป็นคำอื่น เช่น echo str_replace("ผศ.ดร.", "", "ผศ.ดร.สมบูรณ์  ใจดี"); ก็จะได้ผลลัพธ์ที่แทนที่ ผศ.ดร. เป็นค่าว่าง = สมบูรณ์  ใจดี หรือ ใช้ตัดเครื่องหมายคอมม่าในตัวเลขออกไป echo str_replace(",", "", "1,234,654.00"); ก็จะได้แต่ตัวเลข 1234654.00 เพื่อเอาไปบันทึกในฐานข้อมูล นอกจากนี้ยังสามารถนำไปใช้แทนที่คำหยาบได้ด้วย ยกตัวอย่าง $rough = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U"); $c...

PHP Codeigniter กับการใช้งาน Template Parser Class แล้วไม่สามารถเรียกใช้ตัวแปรด้านนอก Variable Pairs ที่กำหนดไว้ได้

มาดัดแปลงฟังก์ชั่น Template Engine ใน CodeIgniter กัน โค้ดด้านล่างนี้เป็นส่วนของ View ที่มาจากเว็บไซต์ CodeIgniter https://www.codeigniter.com/userguide3/libraries/parser.html โดยจะมี Controller  ที่ทำหน้าที่รับส่งค่าดังนี้ เมื่อลองรันทดสอบบนหน้าเว็บบราวเซอร์ จะเห็นว่าข้อมูลในอาร์เรย์จะแทรกลงไปในตำแหน่งวงเล็บที่ตรงกับ Key ของข้อมูลแต่ละตัว และในส่วนของ {blog_entries} .......... {/blog_entries} จะพิเศษตรงที่ มีการวนลูปตามจำนวนอาร์เรย์ให้เราเรียบร้อย โดยที่เราไม่ต้องเขียนคำสั่งวนลูปอีกเลย แต่ปัญหามีอยู่ว่า ในบล็อก  {blog_entries} .......... {/blog_entries}  ไม่สามารถเรียกใช้ {site_url} ซึ่งเราได้สร้างอาร์เรย์รับค่าเอาไว้แล้ว หน้า controllers/Welcome.php <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Welcome extends CI_Controller { public function index() { $this->load->helper('url'); $this->load->library('parser'); $data = array( 'site_url' => si...

PHP การกำหนดรูปแบบทศนิยม ตามค่าที่มี หากทศนิยมเป็น 0 ให้ตัดทิ้ง

การตัดทศนิยมที่มีค่าเป็นศูนย์ออกจากตัวเลข จากในรูปก็คือถ้า .00 ก็จะตัดทิ้ง แต่ถ้ามีทศนิยมมาด้วย ก็ให้คงเอาไว้ วิธีง่ายๆที่ใช้ก็คือ การ +0 เข้าไปเท่านั้นเองก็จะได้ผลลัพธ์ที่ต้องการ โดยไม่ต้องไปเสียเวลา explode() แล้วมา implode() ใหม่ แต่ถ้ารูปสึกว่า 9166.7 เลขทศนิยมหลักเดียวแบบนี้ไม่สวย จะใส่ number_format() ครอบไว้อีกทีก็ย่อมได้ แต่ทีนี้ถ้าเจอกับเลขที่ไม่มีทศนิยมล่ะ?? ก็กลายเป็น 1255.00 อีก ดังนั้นก็เพิ่มฟังก์ชั่นสำหรับตรวจสอบเข้าไป function is_decimal( $val ) {     return is_numeric( $val ) && floor( $val ) != $val; } เวลาใช้ก็เรียกแบบนี้     if(is_decimal($val)){         $val = number_format($val, 2);     }else{         $val = number_format($val);     } ทีนี้เลข  9166.7  ก็จะเป็น  9,166.70 เหมือนเดิม และเลข 1255.00 ก็กลายเป็น  1,255 เท่านั้น :: อ้างอิง :: Remove useless zero digits from decimals ...

ขั้นตอนแก้ปัญหา - สั่งพิมพ์ PDF แล้วเกิดข้อความแจ้งเตือนข้อผิดพลาด TCPDF error Line Number: 18650

สั่งพิมพ์เอกสาร PDF ด้วย TCPDF แล้วปรากฏข้อความแจ้ง Error Message: Undefined offset: 132 Filename: tcpdf /tcpdf.php Line Number: 18650 ความผิดปกติก็คือ สามารถพิมพ์เอกสารได้ปกติ แต่มีอยู่รายการเดียว ที่ไม่สามารถพิมพ์ได้ ดังนั้นจึงโฟกัสไปที่ข้อมูลในเอกสารชุดนั้น เริ่มต้นจากการค้นหาจุดที่เกิดข้อผิดพลาด เนื่องจากไม่มีแจ้งว่าโค้ดบรรทัดไหนที่เราเขียนผิดพลาด แต่ข้อความแจ้งถึงส่วนข้างในไลบรารี่ TCPDF ที่เรานำมาใช้เท่านั้น 1. echo () เท่านั้นที่จะคลี่คลายข้อสงสัย หาจุดที่คิดว่าน่าจะเกิดข้อผิดพลาด แล้ววางโค้ดไปเลย อาจจะเริ่มจาก echo 11111; จนไปถึง echo 99999;  หรือจะ echo 'AAAAAA';  ถึงจุดที่ 'ZZZZZ'; ก็ได้ 2. มารันหน้าเว็บเพื่อดูผลลัพธ์กัน ว่าข้อความที่ echo ออกมาจะโผล่ตรงไหนบ้าง ในตัวอย่างข้อความ error ปรากฏขึ้นระหว่าง 5 กับ 6  ให้กลับไปดูโค้ดที่ตำแหน่งช่วงนั้น และปรับสโคปให้เหลือแคบที่สุดจนเจอต้นตอ 3. เมื่อรู้ว่าเกิดจาก writHTMLCell() ก็มาดูว่าอะไรที่ถูกเขียนออกมาแล้วทำให้ PDF ของเราทำงานผิดพลาด แต่ก่อนจะลัดไปถึงขั้นตอนที่ 7 เราลองมาไล่ดูใน Go...

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

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

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

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

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 ระบบบริหารจัดการ พล็อตนิยาย - ตอนที่ 1

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

CodeIgniter PDF ตอนที่ 2 : กรอกข้อมูลลงในแบบฟอร์ม PDF

      จากความเดิมตอนที่แล้ว " PHP PDF ตอนที่ 1 : ออกรายงานเอกสาร PDF ด้วย PHP CodeIgniter โดยใช้ไลบรารี่ TCPDF และ FPD " ในตอนนี้เรามาลองสร้างข้อมูลทดสอบกันสักหน้าละกันนะครับ ก่อนที่จะนำเข้าสู่การสร้างฐานข้อมูลเพื่อใช้กับข้อมูลทะเบียนนักเรียนของเรา และจะต่อยอดไปถึงระบบบันทึกข้อมูลผลการประเมินแบบออนไลน์กันเลยทีเดียว ^^ 1. เริ่มต้นจากการเตรียมไลบราลี่ PDF ที่ต้องใช้ทั้งหมด 2 ตัวด้วยกัน     1) TCPDF     2) FPDI     (จะนำไปไว้ในไดเรกทอรี่ application/third_party ของ codeigniter) 2. จากนั้นก็เตรียมโปรเจ็กต์ด้วย CodeIgniter ด้วยโปรแกรมที่ใช้เขียนโค๊ด (IDE) ที่ชื่อว่า eclipse ซึ่งในส่วนนี้ใครถนัดโปรแกรมไหน จะใช้อะไรเขียนโค๊ดก็ตามสะดวกเลยครับ 3. สร้างไฟล์ Pdf.php ในไดเรกทอรี่ libralies เพื่อเรียกใช้ไลบราลี่ TCPDF และ FPDI    libraries/Pfd.php <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); require_once APPPATH.'third_party/tcpdf/tcpdf.php'; require_once ...

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