Sunday, November 20, 2011

Saturday, November 19, 2011

Embed fonts in the file Microsoft Office (2007++)


  • ให้เราไปที่ tab File และเลือกเมนู Options จากนั้นไปที่ Save
  • เลือกที่ Embed fonts in the file
  • เราสามารถเลือกได้ว่า จะตั้งค่า embed font เฉพาะไฟล์นี้ Document1 หรือ All new documents
  • อืมลืม อธิบายอีกอย่าง ปกติถ้าเราใช้ font ที่แปลกในไฟล์ doc เรา เมื่อเราทำการบันทึกและนำไปเปิดที่เครื่องอื่นๆ จะเปิดไม่ได้หรือโปรแกรม crash ไปเลยก็มี โพสนี้แก้ปัญหาอย่างว่านั่นแหละ
  • แต่มันต้องแรกมาด้วยขนาดไฟล์ที่ต้องเพิ่มขึ้นแน่นอน จากที่ doc เราต้องยัด file font เข้าไปด้วย

Friday, November 18, 2011

Insert clip video mp4 or flv on Power Point

  •  เปิด power point บันทึกไฟล์ให้เรียบร้อยก่อน จากนั้นไปที่ Insert
  •  คลิกที่ Video => Video from file
  • จากนั้นไปยังพาธไฟล์ที่เก็บ video ที่เราจะแทรก ซึ่ง format ต้องเป็นประมาณนี้
  • ถ้าเราจะแทรกไฟล์จาก youtube แนะนำโหลดมาเป็น format flv หรือ mp4
  • ในกรณี mp4 นี่ไม่แน่ใจเราต้องลง quicktime ในเครื่องเราด้วยมั้งถึงจะเปิดได้


อ้างอิง

Thursday, November 17, 2011

Migrate MySQL -> MSSQL ผ่าน ODBC แล้ว Error

  • คือพยายามจะย้ายข้อมูลจาก MySQL 1 table ไปยัง MSSQL ผ่าน ODBC
  • แต่พอ execute คำสั่งสุดท้ายเพื่อทำการย้าย มันบ่ได้น้อ
 Msg 7347, Level 16, State 1, Line 1
OLE DB provider 'MSDASQL' for linked server 'MySQL-Migrate' returned data that does not match expected data length for column '[MSDASQL].name_TH'. The (maximum) expected data length is 300, while the returned data length is 42.

Solved
  • ให้เราแก้ data type ข้อมูลที่ MySQL ของ column ที่เป็น char ให้เป็น varchar ก่อน
  • แล้วจึงทำการย้าย

อ้างอิง
  • http://goo.gl/F2cJy
  • http://www.codeproject.com/KB/database/migrate-mysql-to-mssql.aspx 
  • http://connect.microsoft.com/SQLServer/feedback/details/126972/mssql2005-returned-data-that-does-not-match-expected-data-length-for-column

Monday, November 14, 2011

varchar กับ nvarchar ต่างกัน

nvarchar กับ varchar จะต่างกันตรง nvarchar จะเก็บตัวอักษรที่ใช้ code เป็น unicode ได้
ซึ่ง 1 ตัวอักษรจะใช้แค่ 2 byte ในการเก็บส่วน varchar ใน 1 ตัวอักษรจะเก็บใช้ 1 byte ในการเก็บ
ดังนั้นถ้าเรามี table ที่ต้องเก็บข้อความหลายภาษาอาจต้องใช้ nvarchar ส่วนถ้าเก็บแค่ อังกฤษกับไทย ใช้ varchar ก็พอครับ

อ้างอิง

Sunday, November 13, 2011

แก้ปัญหา import .sql เข้า MySQL ผ่าน phpmyadmin ไม่ได้


  • No data was received to import. Ether no file name was submitted, or the file size exceeded the maximum size permitted by your PHP configuration See FAQ 1.16.
  • ทั้งที่ไฟล์ .sql ของเราขนาดเล็กนิดเดียวเองเพียง 12 KB

  • แก้ปัญหาโดย Run SQL query copy วางและ execute เลย


Strict Standards: Non-static method JLoader::import()

Solved
  • แก้ไขคอนฟิก php.ini แก้ display_errors จาก on เป็น off
display_errors = Off

อ้างอิง

php แจ้งเตือน Notice: Undefined index:

Solved

  • เพิ่มโค้ดนี่ประมาณบรรทัดแรกๆ ของไฟล์ php 
error_reporting (E_ALL ^ E_NOTICE);

  • หรือ ใช้เครื่องหมาย @ นำหน้าบรรทัดที่ warning

Refer

PHP Notice: Use of undefined constant par_name - assumed 'par_name' in ...

PHP Notice: Use of undefined constant par_name - assumed 'par_name' in D:\Sites\\file.php on line 593
  • อันนี้คือโค้ดบรรทัดที่มีปัญหา $par_name = $_SESSION[par_name];
  • แก้ใหม่เป็น$par_name = $_SESSION['par_name'];
  • สรุปง่ายๆ คือใส่ single qoute ครอบ par_name

เพิ่มเติม
  • มันมีปัญหาที่ version php แบบแรกรุ่นเก่าจะไม่ฟ้องอะไร ถ้า php เวอร์ชั่นใหม่ๆ (น่าจะ 5++) มันจะฟ้อง ประมาณนั้น

อ้างอิง

Find & Replace words in mutiple files by Notepad++


  • คือเอาโค้ด php คนอื่นมาแก้แล้วของเดิมเค้าใช้ open tag แค่ <? ซึ่งคาดว่าเค้าคงจะเขียนตอน php เวอร์ชั่นเก่า
  • เราก็ไม่อยากไปแก้คอนฟิก php.ini ให้ใช้ short_open_tag ด้วยสิทำไงล่ะ
  • งั้นเราคงต้องนั่ง เปิดทีละไฟล์แล้วตามด้วย Find & Replace
  • ถ้าไม่กี่ไฟล์คงไม่เป็นไรแต่ มัน 30 - 40 ไฟล์เลยแฮะ เมื่อยมือแย่เลย

Solved
  • แก้ปัญหาโดย Notepad++ เปิดโปรแกรมแล้วไปที่เมนู Search เลือก Find in Files...



  • ไปที่ tab Find in Files
Find what : ใส่คำที่ต้องการค้นหา
Replace with : ใส่คำที่ต้องการนำไปแทนที่คำที่ค้นหา
Filters : ในที่นี้ต้องการแก้ไขเฉพาะไฟล์ php ก็ใส่เป็น *.php
Directory : ระบุเป็นพาธของ folder ที่เก็บไฟล์ php เรา
  • เมื่อทุกอย่างเรียบร้อยคลิกที่ปุ่ม Replace in Files


เพิ่มเติม

  • ทิปนิดหน่อยที่ Filter ในกรณีที่เราต้องการ Find & Replace ไฟล์ที่ขึ้นต้น แบบใดแบบหนึ่งเราสามารถใส่ค่าได้เป็น start_name*.* ก็ได้เช่นกัน

อ้างอิง

Saturday, November 12, 2011

Unzip .tar.gz on Windows by Cygwin


  • คือใช้คำสั่ง tar -zcf source file.tar.gz บน Debian
  • แล้วเอา file.tar.gz มาแตกไฟล์บน Win 7 โดยใช้ 7zip
  • ในตอนแรก extract file.tar.gz ได้ผลลัพธ์ คือ file.tar
  • พอ extract file.tar ด้วย 7zip ที่นี้มัน error หว่า


  • เค้าใจได้ว่า error เพราะชื่อไฟล์ ภาษาไทยที่อยู่ใน tar มันเป็นภาษาต่างดาว
  • แต่ folder ที่ได้จากการแตกไฟล์ .tar มันก็ขนาดเท่าๆ file.tar นะ แต่มีบางไฟล์ที่ ไม่สามารถแตกออกมาได้ ดัง Diagnositc messages ที่มันแสดงออกมาแน่ๆ ทำให้ไฟล์ที่แตกออกมานั้นไม่สามารถเชื่อถือได้เลย
  • ทดสอบอีกวิธี โดยใช้ tar cmd ผ่าน cygwin
tar -xzvf file.tar.gz หรือ tar -zxvf file.tar.gz มัน error แบบนี้ 
tar: This does not look like a tar archive
tar: Skipping to next header
tar: Exiting with failure status due to previous errors
  • ค้นข้อมูลในเน็ตได้ผลลัพธ์คือ ให้ใช้ gzip และ ตามด้วย tar

Sovled
  • แก้ปัญหาแตกไฟล์ file.tar.gz ที่มันมี content ภาษาไทย (tar.gz บน linux ได้แต่ แสดงบน windows เป็นภาษาต่างดาว ทำให้ไม่สามารถแตกไฟล์นั้นได้)
  • ในที่นี้แตกไฟล์ผ่าน tar cygwin
gzip -d file.tar.gz
tar -xf file.tar

Refer

Friday, November 11, 2011

เกี่ยวกับสายเชื่อมต่อ DVI บน PC


  • คือจะเปลี่ยนสายเชื่อมต่อจาก VGA เป็น DVI 
  • พอจะเสียบสายกับ monitor หัวทองแดงดันเบี้ยวไปหน่อย
  • เลยเอาไม้บรรทัด(เหล็ก) ปรับทิศทางให้กลับสู่สภาพเดิม
  • แต่ได้กินเหม็นไหม้ ๆ จากใหนก็ไม่รู้หาต้นตอไม่เจอ ขอผ่านไปก่อน
  • ทดสอบเสียบสาย DVI เรียบร้อย monitor no signal เปลี่ยนเป็น VGA มันก็ no signal ซะงั้น
  • สงสัย VGA Card ไฟฟ้าลัดวงจร ไหม้แหละ ^^'

Thursday, November 10, 2011

Insert form control in Microsoft Word 2010


  •  เปิด Word แล้วไปที่ Tab File เลือก Options


  •  Word Options เมนูเลือก Customize Ribbon  จากนั้นที่ main tabs เลือก developer และ OK


  • เราก็จะได้ Developer tab มาแล้ว แค่นี้เราก็สามารถเพิ่ม form control เข้าไปใน Word 2010 เราได้แล้ว

Refer

SQL Server 2008 database collation


  • ค่าเริ่มต้นในที่นี้เป็น Thai_CI_AS = Thai Case Insensitive Accent Sensitive


ปัญหา

  • ถ้าเราเขียนโปรแกรมเชื่อมต่อ database เรื่องนี้เป็นสิ่งหนึ่งที่เราต้องรับรู้เรื่อง database collation 
  • ไปเจอ case ที่ sql query ต้องใส่ชื่อ table หรือ column ตัวใหญ่ ตัวเล็กแป๊ะๆ ใส่ไม่ถูกเป็นอัน Failed อย่างเดียว ซึ่ง database ก้อนนี้ต้องมีอะไรที่แปลกแน่ๆ เพราะ C# กับ SQL Server มานาน พิมพ์ใหญ่หรือเล็กจะถูกมองเป็นตัวเดียวกัน อยู่แล้ว แสดงว่า ก้อนนี้ต้องมีการตั้งค่า ที่ไม่ใช่ default แน่ๆ
  • แนะนำให้ใช้ Thai_CI_AI = Thai Case Insensitive Accent Insensitive ไปเลย หรือจะใช้ค่าเริ่มต้นก็ได้เช่นกัน คือค่าดังภาพด้านบน เราก็จะหมดปัญหาเรื่อง SQL Query command table or column Case Sensitive
  • เราสามารถกำหนดหรือเปลี่ยนค่า collation ได้โดยคลิกขวาที่ database เลือก properties
  • Select a page เลือกเมนู Options เราจะเห็นหัวข้อ Collation: ที่บรรทัดแรก ปรับได้ตามสบาย

อ้างอิงจาก http://mssqlbase.blogspot.com

ความแตกต่างของ Database Collation
Thai_CI_AI คือ Language ภาษาไทย 
   CI = Case Insensitive  
   AI = Accent Insensitive

ต่างกับ Thai_CI_AS คือ
AS = Accent Sensitive

แนะนำใช้ Thai_CI_AI  เพราะ Thai_CI_AS จะมีปัญหาเกี่ยวกับภาษไทยเรื่องของตัวการันต์
เช่นหากเราเขียน QUERY 

SELECT * FROM customer WHERE Name LIKE 'พิมพ%'

หาก Collation เป็น Thai_CI_AS   คนที่ชื่อ พิมพ์ใจ จะไม่ออกมาตามที่ควรจะเป็นครับ
นอกจากนั้นแล้ว Column ใน Table ก็มี Collation ของตัวเองอีกด้วย
ดังนั้นตอน Install Server หรือ Create Database ควรต้องระวังเรื่องนี้ด้วยครับ


อ้างอิง

Tuesday, November 8, 2011

PHP Function convert number to thai month


function toThaiMonth($id){
    $thai=array("","มกราคม","กุมภาพันธ์ ","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม");
    return $thai[$id];
}
$id=4; // เปลี่ยนตัวเลขเดือนตรงนี้
echo toThaiMonth($id);

อ้างอิง



วิธีแก้..Windows Media Player เล่น MP3 ไม่ได้ (XP)



  • Windows Media Player cannot play ...
  • required audio codec is not installed on your computer ซะงั้น

Solved

  • ไปที่ C:\WINDOWS\system32\l3codeca.acm 
  • เปลี่ยนนามสกุลไฟล์เป็น .bak แล้วก็ Download l3codeca.acm ตามนี้ .. 
  • http://www.4shared.com/file/60639026/a0319a02/l3codeca.html 
  • นำมาไว้ที่ C:\WINDOWS\system32\ ครับ 
  • แล้วก็ Start > Run > พิมพ์ regsvr32.exe C:\WINDOWS\system32\l3codeca.acm กด OK 
  • แล้วลองเปิดไฟล์ .MP3 ดูครับ ...

อ้างอิง

Sunday, November 6, 2011

IIS Worker Process stopped working and was closed in Windows 7 64bit




  • บน windows 7 64bit ก็เจอแฮะ
  • รัน iisreset ปุ๊ป เจอปั๊ป
  • แต่พอเรา update เป็น win7 sp1 มันก็ไม่ค่อยจะเป็นเท่าไหร่ 
  • สรุปได้เลยว่า เป็นกับ version ของโปรแกรมที่ไม่เข้ากันกับ OS

Config IIS7 add support PHP by Fast CGI on Windows 7


  • ในที่นี้โหลด PHP เวอร์ชั่น 5.3 มาลงใน Windows 7 64bit กับ IIS7
  • แต่งงมากคือ 5.3 ไม่มีไฟล์ชื่อ phpisapi.dll กับ libmysql.dll แล้วเราจะคอนฟิกมันไงล่ะเนี๋ย
  • อ่านดูแล้วก็ไม่ค่อยรู้เรื่องสักนิดเลยหว่า
5.3.0 The MySQL Native Driver was added, with support for all MySQL extensions (i.e., mysql, mysqli and PDO_MYSQL). Passing in mysqlnd to the appropriate configure switch enables this support.
5.4.0 The MySQL Native Driver is now the default for all MySQL extensions (i.e., mysql, mysqli and PDO_MYSQL). Passing in mysqlnd to configure is now optional.
สรุปความต่าง PHP 5.3 กับ 5.4
  • PHP 5.3 เนี๋ยเพิ่ม driver แล้ว ก็คงประมาณคอนฟิกปุ๊ปใช้ได้ปรับโดยไม่ต้องคัดลอก dll ต่างๆ ไปวางที่ system32 เหมือน 5.2 แต่ต้อง configure enable php_mysql extension ใน php.ini เล็กน้อย
  • แต่ PHP 5.4 จะเปิด extension php_mysql ให้โดยค่าเริ่มต้น ประมาณ คอนฟิก IIS ให้ใช้ PHP ได้ก็สามารถ เขียน connect mysql ได้เลยมั้ง

Solved
  • ขั้นแรกก็จัดการติดตั้ง IIS พร้อม component ที่จำเป็นสำหรับ PHP เรา

  • ตรวจสอบความพร้อม IIS ให้เรียบร้อย http://localhost หรือ netstat -na | find ":80" ตรวจสอบพอร์ต 80 ว่า LISTENED หรือยัง
  • ขั้นต่อมาคือคอนฟิก IIS ให้ support PHP เราในที่นี้ใช้ Fast CGI 
  • Download PHP และแตกไฟล์ให้เรียบร้อยในที่นี้แตกไฟล์ที่ C:/php5/ และสร้างไฟล์ php.ini จาก php.ini-development และคัดลอกไปวางที่ C:\Windows
  • กดปุ่ม Start พิมพ์ iis หรือพิมพ์ inetmgr และกดปุ่ม Enter เพื่อเปิด IIS manager ขั้นมา 
  • ดับเบิ้ลที่ Handler Mappings
  • จากนั้นเราจะได้หน้าต่างของ Handler Mappings
  • ให้เราไปที่เมนู Actions และคลิกที่ Add Module Mapping... 
  • กันลืมถ้าเราใช้ ISAPI ก็ให้คลิกที่ Add Script Map... แต่ในโพสนี้ ก็ใช้ Module นั่นแหละ
  • Request path: ใส่เป็น *.php
  • Module: ก็เลือกเป็น FastCgiModule
  • Executable (optional): ใส่พาธของ php-cgi.exe
  • Name: ให้อะไรก็ได้แล้วแต่เราจะตั้งและเข้าใจในที่นี้ใส่เป็น PHP 5.3
  • กรอกข้อมูลเสร็จก็ OK ซะ
  • ใน list ก็จะปรากฏค่าที่เรากรอกลงไปเมื่อกี้
  • แต่แค่นี้มันดูง่ายเกินไป ยังไม่เสร็จนะครับพี่น้อง แก้ php.ini ต่อเลย
  • cgi.force_redirect เปลี่ยนค่าให้เป็น 0
  • cgi.fix_pathinfo เปลี่ยนค่าให้เป็น 1
  • fastcgi.impersonate เปลี่ยนค่าให้เป็น 1
  • จากนั้นก็เอาคอมเม้นออกที่ extension=php_mysql.dll สำหรับเปิดใช้  mysql 
  •  php 5.3 ทำแค่นี้เท่านั้น แต่ 5.2 ต้องใช้ libmysql.dll ด้วย
  • และสุดท้ายก็ iisreset เป็นอันเสร็จทุกขั้นตอน 
  • ทดสอบ PHP โดยสร้าง info.php เพิ่มไว้ภายใต้ web root โดยมี content แบบนี้
  • <?php phpinfo(); ?>
เพิ่มเติม
  • ในโพสนี้ทดสอบบน Win7 64bit

เกี่ยวข้อง

อ้างอิง

Saturday, November 5, 2011

สิ่งสำคัญที่ต้องทำหลังจากข้อมูลถูกลบหรือฮาร์ดดิสค์ชำรุด

ทำไมต้องกู้ข้อมูล
  • ถูก virus โจมตีจนโครงสร้างข้อมูลเสียหาย อ่านไม่ได้
  • เผลอ Delete Format Copy ทับหรือติดตั้ง O/S ใหม่โดยไม่ทัน Back Up ข้อมูล
  • แรงดันไฟไม่สม่ำเสมอ หรือไฟดับกระทันหัน ขณะที่ Harddisk กำลังทำงาน
  • เกิด Bad Sector สะสมจากการกระเทือน เคลื่อนย้าย
  • ตกหล่น หรือได้รับกระทบกระเทือนรุนแรง จน Harddisk ชำรุดเสียหาย
  • Harddisk หมดสภาพก่อนเวลาอันควร
  • และสาเหตุอื่นๆ อีกมากมาย

การหยุดใช้งานสื่อบันทึกข้อมูลทันที่ คือสิ่งที่ควรทำหลังจากที่สูญเสียข้อมูล จากสาเหตุดังต่อไปนี้
  1. ข้อมูลถูกลบ : ควรงดเว้นการใช้งานทันที เพราะอาจจะเป็นการเขียนทับข้อมูลที่ถูกลบไป ทำให้ข้อมูลสูญหายถาวร
  2. ฮาร์ดดิสค์มีเสียงดังขณะใช้งาน : ควรหยุดใช้งานทันที เพราะหากฝินใช้งานต่อไป อาจทำให้จานแม่เหล็กเป็นรอยจากอุปกรณ์ภายในชำรุดอยู่ จนอ่านข้อมูลไม่ได้อีกต่อไป
  3. ฮาร์ดดิสค์ตก : ไม่ควรลองเปิดใช้งาน เพราะหัวอ่านอาจจะอยู่ในตำแหน่งที่ไม่ถูกต้อง และขูดจานแม่เหล็กจนเป็นรอย จนข้อมูลเสียหาย อ่านไม่ได้อีกต่อไปเช่นกัน
อ้างอิง : ข้อมูลจากโปรชัวร์ IDR Data Care Pack

คนทะเลาะกันทำไมต้องไปพาดพิงถึง สัตว์โลกอื่นๆด้วย


Thursday, November 3, 2011

ปัญหาเล็กของ CCTV ยี่ห้อหนึ่ง


  • คือใช้กล้องวงจรปิดยี่ห้องหนึ่ง ขอไม่ระบุ
  • มีอยู่ 4 ตัว มีตัว 1 ใช้ได้มั่งไม่ได้มั่ง และสุดท้ายก็ใช้ไม่ได้เลย
  • ให้ช่่างมาดู พี่เค้าก็ลองขยับนั่นนี่มันก็ติด คิดว่าน่าจะเป็นที่สายสัญญาณไม่แน่น วันนี้กล้องที่มีปัญหาก็ใช้ได้แล้ว
  • วันต่อมา อ้าวกล้องตัวเดิมสัญญาณ loss อีกแหละ ช่างมาอีกรอบ ทีนี้พันสาย และหัวข้อต่อซะแน่นเลย วันนี้ก็ตัวนั้นก็ใช้ได้อีก
  • วันต่อมา อีกวัน อ้าวสัญญาณ loss อีกแล้ว โอ้วมันเป็นไรกันเนี๋ย ช่างมาดูเป็นรอบที่ 3 ทีนี้พี่ช่างเค้าเอา adapter power มาเปลี่ยนให้เลย เพราะคิดว่าปัญหาน่าจะเป็นที่ตัวจ่ายไฟเลี้ยงนี่แหละ
  • และวันต่อมา อืมที่นี้สัญญาณปกติแฮะ ไม่ loss สงสัยจะเป็นที่ adapter power จริงๆ 
  • เพื่อแน่ใจ ต้องรอดูสัก สัปดาห์ ถ้าไม่ loss แสดงว่า adapter power มันเพี้ยน ติดๆ ดับๆ

Wednesday, November 2, 2011

วิธีแก้ปัญหาคอมพิวเตอร์อย่างผู้ชำนาญ




start printer spooler service แล้วมัน stop เอง หรือ start ไม่ได้เลย

  • start printer spooler service แล้วมัน stop เอง หรือ start ไม่ได้เลย
  • อัางอิงบน windows xp sp3 นะ

Solved เบื้องต้น
  • ลง driver ใหม่ แต่ก่อนลงให้ทำดังนี้
  • เข้าระบบผ่าน safe mode (ทั่วไปคือปุ่ม F8)
  • Delete the spool printer and driver files
C:\Windows\System32\Spool\Printers
C:\Windows\System32\Spool\Drivers\w32x86
  • ไฟล์ที่อยู่ภายใต้ folder ทั้งสองนี้ลบออกให้หมด
  • จากนั้นก็ reboot เครื่อง
  • เมื่อเข้าระบบแบบปกติ ก็จัดการ install driver printer เครื่องนั้นใหม่ให้เรียบร้อย

สรุป
  • ปัญหาน่าจะเกิดจาก malware สักชนิด
  • วิธีแก้ปัญหา ดังที่กล่าวมา (เป็นการแก้ปัญหาแค่เบื้องต้น)
  • ถ้าแก้ไขเบื้องต้นแล้วไม่หายก็ ลองแก้ไขตามโพสนี้
  • http://juuier.blogspot.com/2010/12/spooler-subsystem-app-has-encountered.html

Tuesday, November 1, 2011

SVOA PC Shutdown เครื่องแล้วไฟสัญญาณหน้า case ไม่ดับ


  • SVOA PC Shutdown เครื่องแล้วไฟสัญญาณหน้า case ไม่ดับซะงั้น แต่ monitor ก็ดับปกตินะ
  • เอาไปให้ช่างดู เค้าบอกว่า mainboard น่าจะมีปัญหา
  • วันต่อมาช่างส่งกลับ และส่งสาย SATA มาพร้อม เค้าเปลี่ยนสาย SATA ให้เรานี่เอง
  • แสดงว่ากรณีของเราเกิดจากสาย SATA ต่อ Harddisk กับ Mainboard เสียหรอเนี๋ย

Popular Posts