No Copy Paste In TextBox Javascript

<script language=”javascript”>

function onKeyDown() {
// current pressed key
var pressedKey = String.fromCharCode(event.keyCode).toLowerCase();

if (event.ctrlKey && (pressedKey == “c” ||
pressedKey == “v”)) {
// disable key press porcessing
event.returnValue = false;
}

} // onKeyDown

</script>

datatype mysql

datatype mysql เราแบ่งหลักๆได้เป็น 3 ประเภท

  1. Numeric เอาไว้จัดเก็บตัวเลข
  2. Date and Time เอาไว้จัดเก็บ วัน , เวลา
  3. String เอาไว้จัดเก็บ ตัวหนังสือ ตัวอักษรต่างๆ

ตารางสรุป Numeric

ประเภท Numeric ขนาดข้อมูลที่เก็บได้ ขนาดพื้นที่ ที่ใช้
tinyint [unsigned] [signed] -128 ถึง 127

[unsigned] 0 ถึง 255

1 bytes
smallint [unsigned] [signed] -32768 ถึง 32767

[unsigned] 0 ถึง 65535

2 bytes
mediumint [unsigned] [signed] -8,388,608 ถึง 8,388,607

[unsigned] 0 ถึง 16,777,215

3 bytes
int [unsigned]

integer [unsigned]

[signed] -2,147,483,648 ถึง 2,147,483,647

[unsigned] 0 ถึง 4,294,967,295

4 bytes
bigint [unsigned] [signed] -9,223,372,036,854,775,808 ถึง 9,223,372,036,854,775,807

[unsigned] 0 ถึง 18,446,744,073,709,551,615

8 bytes
float [unsigned] [signed]   -3.402823466E+38 ถึง -1.175494351E-38, 0, และ 1.175494351E-38 ถึง 3.402823466E+38

[unsigned] จะไม่มีค่าเป็นลบ

4 bytes
double [unsigned] [signed]-1.7976931348623157E+308 ถึง -2.2250738585072014E-308, 0, และ 2.2250738585072014E-308 ถึง1.7976931348623157E+308.

[unsigned] จะไม่มีค่าลบ

8 bytes
decimal [M] ค่าที่ระบุจำนวนตัวเลขที่ต้องการเก็บ เช่น [M] คือ 30 ก็เก็บเลขได้ 30 หลัก (ตั้งแต่ MySQL 5.0.3) สูงสุดที่ 30 หลัก (M+7)/8
bit [M] ใส่ค่า bit ใส่ได้ ตั้งแต่ 1 ถึง 64 (ตั้งแต่ 5.0.3)

สำหรับ unsigned คือไม่มีเครื่องหมาย หรือเป็นแบบไม่มีค่าติดลบนั่นเองครับ แต่ว่าปกติที่เราสร้างfield จะถูกกำหนดเป็น signed โดยอัตโนมัติครับ

ตารางสรุป Date and Time

ประเภท Date Time ขนาดข้อมูลที่เก็บได้ ขนาดพื้นที่ ที่ใช้
date เก็บวันเดือนปี ใน format ‘YYYY-MM-DD’ อยู่ในช่วง ’1000-01-01′ ถึง ’9999-12-31′ 3 bytes
time เก็บเวลา ใน format ‘HH:MM:SS’ 3 bytes
datetime เก็บ วัน เดือน ปี เวลา ใน format  ’YYYY-MM-DD HH:MM:SS’ อยู่ในช่วง ’1000-01-01 00:00:00′ ถึง ’9999-12-31 23:59:59′ 8 bytes
timestamp เก็บ วัน เดือน ปี เวลา ใน format ’YYYY-MM-DD HH:MM:SS’ อยู่ในช่วง ’1970-01-01 00:00:01′ UTC ถึง ’2038-01-19 03:14:07′ UTC ซึ่งเป็นวินาที ที่มีจุดเริ่มต้นตั้งแต่ ’1970-01-01 00:00:00′ 4 bytes
year [2|4] เก็บ ปี ใน format ‘YYYY’ ถ้า 2 จะเก็บแค่ 2 ตัวท้าย ถ้า 4 จะเก็บเต็ม 4 ตัว 1 bytes

ตารางสรุป String

ประเภท String ขนาดข้อมูลที่เก็บได้ ขนาดพื้นที่ ที่ใช้
CHAR[(M)] เก็บตัวหนังสือ ตั้งแต่ 0 – 255 ตัว (M) M bytes
BINARY(M) เหมือน char แต่ เก็บเป็น binary string M bytes
varchar(M) เก็บตัวหนังสือ 0 – 255 ถ้า MySQL > 5.0.3 เก็บได้ 0- 65,535 ตัวอักษร L+1,L+2 bytes
tinytext เก็บตัวหนังสือ 0 – 255 ตัว L+1 bytes
text เก็บตัวหนังสือ 0 – 65,535 ตัว L+2 bytes
mediumtext เก็บตัวหนังสือ 0 - 16,777,215 ตัว L+3 bytes
longtext เก็บตัวหนังสือ 0 - 4,294,967,295 ตัว L+4 bytes
enum เก็บค่าที่กำหนดเอง ใช้พื้นที่ 1 หรือ 2 bytes ไม่เกิน 65535

L คือตัวอักษรที่ใช้จริง

จะเห็นได้ว่า enum เป็นการเก็บ sting ได้น่าสนใจมาก เพราะว่าหากเก็บไม่เกิน 255 แบบ ก็จะใช้เพียง 1 bytes เท่านั้น ส่วน set ลองลงมา เราอาจจะเอามาเป็น field เก็บจังหวัด อำเภอได้อย่างสบาย โดยที่ไม่เปลือง database เลย ส่วนการเก็บ sting ที่รับมาจาก user ก็ใช้เป็น varchar หรือ พวก text ไป

วันนี้ไปสอบใบขับขี่รถยนต์มา

วันนี้ไปสอบใบขับขี่รถยนต์มา
รอบเดียวผ่านแบบ ชิว ๆ เลย
ไม่น่าเชื่อเลยว่ามานจะยากกว่าการเขียนโปรแกรมซะอีก

Posted from WordPress for Android

ติดตั้ง streaming server

เซ็งตั้งแต่สั่งเครื่อง dell ถามว่าจะจัดส่งวันตอบไม่ได้ซะงั้นแล้วจะซื้อตั๋วเครื่องบินล่วงหน้าได้ไง
ต่อมาพอสั่งไปเราจะบอกว่าส่งที่ inert มานบอกว่า order แล้วแก้ไม่ได้ อ่าวงงเลยตรู จะบ้าเรอะยังไม่บอกที่อยู่เลยว่าจะส่งที่ใหนเออูมันส่งมาที่บริษัท จะให้แบกขึ้นเครื่องไปอีกเหอะๆ ชีวิต สรุปว่าสุดท้ายงานก็ผ่านไปด้วยดี

Posted from WordPress for Android

VirtualHost ง่ายๆ สไตล์ Windows ด้วย Apache

1.แก้ไขไฟล์ httpd.conf (โดยไปที่ Start -> Programs -> AppServ -> Apache Configure Server -> Edit the Apache httpd.conf Configuration File)
หรือ C:\Appserv\apache2\conf\httpd.conf
ให้เพิ่ม Code นี้เข้าไป ที่ท้ายสุดของไฟล์
โค้ด:
NameVirtualHost *

<VirtualHost *>
ServerName localhost
DocumentRoot “C:\AppServ\www”
</VirtualHost>

<VirtualHost *>
ServerName soda1.com
DocumentRoot “C:\AppServ\www\mycools”
</VirtualHost>

<VirtualHost *>
ServerName soda2com
DocumentRoot “C:\AppServ\www\mycools”
</VirtualHost>

Save ไฟล์
*ตรง ServerName นั้นให้สัมพันธ์กับการตั้งชื่อในไฟล์ HOSTS ส่วน DocumentRoot นั้นก็แล้วแต่ท่านว่า Site ไหน เก็บใน Folder ไหน ให้จำไว้ให้ดี เพราะจะใช้ในข้อต่อไป

2.ไปที่ Folder C:\AppServ\www สร้าง folder ขี้นมาให้สัมพันธ์กันกับข้างต้น
สร้างโฟล์เดอร์ soda1 ใน C:\AppServ\www
สร้างโฟล์เดอร์ soda2 ใน C:\AppServ\www

3.กลับไปที่ AppServ ทดสอบ Apache โดยไปที่ Start -> Programs -> AppServ -> Apache Configure Server -> Test the Apache httpd.conf Configuration File )
จะต้องได้ผลดังนี้( ไม่มี Error ) Syntax OK

โค้ด:
c:/appserv/apache/conf/httpd.conf: Syntax OK
Note the errors or messages above, and press the <ESC> key to exit. 18…
4.ทดสอบ Apache อีกครั้ง
ใช้ notepad สร้าง html เช่น
โค้ด:
<html> My Name’s MyCOOLs</html>  โดยทำการบันทึกเก็บไว้ที่  “C:\AppServ\www\mycools\index.html”
และ
<html> My Name’s MyCOOLs</html>  โดยทำการบันทึกเก็บไว้ที่  “C:\AppServ\www\mycools\index.html”

5. ทดสอบโดย
เปิด IE พิมพ์ url
www.mycools.in.th จะต้องได้ My Name’s SODA1
และ พิมพ์ url www.mycools.in.th
จะต้องได้ My Name’s SODA2

เสร็จแล้วครับ เห็นไหมครับ ง่ายนิดเดียว ความจริงอธิบายยาวไปแค่นั้นเองครับ เผื่อคนที่ไม่ค่อยมีความรู้เรื่อง DNS,VirtualHost และอื่นๆ
ถ้าจะสรุปจริงๆ คือ
1.แก้ไขไฟล์ httpd.conf
2.สร้าง Folder ให้ตรงกันเสร็จแล้วครับ VirtualHost
3.และการทำ Nuke ก็แค่ Dup Folder Nuke ทั้งตัว html และ ตัวฐานข้อมูลไป แต่ละไซต์และแก้ config ให้ตรงกันเท่านั้นเอง

** หลังจากแก้ไข httpd.conf แล้วอย่าลืม restart apache ด้วยครับ
ไปที่ Start -> Programs -> AppServ -> Apache Control Server -> Restart