Sunday, March 18, 2012

Bike Accessories อุปกรณ์ติดรถจักรยาน

ไฟหน้า ไฟฉาย
ไฟหน้า สั่งจากเว็บจีน 190 บาท ไม่มีถ่านมาให้ ใช้ถ่าน AAA 3 ก้อน มีปลอกที่ติดกับแฮนด์ และก็ไฟฉายถอดออกมาได้ ซื้อไฟฉายอื่นๆขนาดเดียวกันมาเสียบแทนก็ได้

ไฟท้าย 20 บาท
ไฟท้าย ร้านทุกอย่าง 20 บาทในตลาดนัด ถ้าขายใต้ห้าง Big C หรือ Lotus จะขายทุกอย่าง 25 บาท แต่ไม่ใช่ที่เป็นของ Big C เลยนะ ในนั้นแพง ไม่มีถ่านมาให้ ใช้ถ่าน AAA 2 ก้อน

ไฟอเนกประสงค์
ไฟอเนกประสงค์ สั่งจากเว็บจีน คู่ละ 75 บาท มีสีขาวกับสีแดง ใช้ถ่านกลมๆแบนๆเท่าเหรียญ 5 ใช้อันละ 2 ก้อน มีมาให้พร้อม แต่สั่งซื้อถ่านมาเตรียมไว้ด้วยเลยก็ดี 20 ก้อนประมาณ 60 บาท ไฟมี 2 ระบบ คือสว่างตลอดเวลา กับกระพริบ กดที่ดวงไฟเพื่อเปิด-ปิด ที่รัดเป็นยางยืด บางคนก็เอามาติดที่หมวก บางคนก็ติดที่กระเป๋า

บังโคลน
บังโคลน Super Sport ห้างแฟชั่น ไอส์แลนด์ 290 บาท บังโคลนหน้ามีแต่ส่วนหลัง ไม่มีส่วนที่ยื่นไปข้างหน้า ติดโดยขันสกรูว์เข้ากับรูชองคานโช๊ค บังโคลนหลังปรับได้หลายระดับ ติดโดยล็อคกับหลักอาน

ไมล์ Sunding
ไมล์ Sunding สั่งจากเว็บจีน ประมาณ 210 บาท เป็น wireless ติดตั้งลำบากพอสมควร ต้องใช้สายรัด ติดตัวเซ็นเซอร์ตรงตะเกียบ แล้วติดตัวเล็กๆอีกตัวตรงซี่ล้อให้ห่างกันไม่เกิน 1 ซ.ม. หน้าจอมีหลายระบบ เลือกได้ว่าจะเอาเป็นไมล์หรือกิโลเมตร มีวัดความเร็ว วัดระยะทาง จับความเร็วสูงสุด ความเร็วเฉลี่ย นาฬิกา ต้องป้อนขนาดยางที่เราใช้ก่อน

GIANT กระเป๋าใต้เบาะ
กระเป๋าใต้เบาะ สั่งจากเว็บจีน ประมาณ 210 บาท ยี่ห้อ Giant เป็นพื้นแข็งด้านบนและด้านล่าง มีแค่ 2 ช่อง ช่องใหญ่ด้านบน และช่องเล็กด้านล่าง ช่องด้านบนสามารถขยายขนาดได้ ที่ล็อคเป็นแบบแข็งล็อคเข้ากับก้านของเบาะพอดี มีสายรัดกับหลักอานอีก 1 อัน

เว็บจีนที่สั่งซื้อมาก็คือ buyincoins.com โดยปกติจะใช้เวลาประมาณ 2-3 อาทิตย์ในการส่ง แต่บางทีอาทิตย์เดียวก็ได้แล้ว

Thursday, March 15, 2012

แผนที่สนามฟุตซอล Bangkok Futsal Arena หนองจอก

แผนที่สนามฟุตซอล Bangkok Futsal Arena หนองจอก, กรุงเทพมหานคร





ดูแผนที่ Bangkok Futsal Arena ขนาดใหญ่ขึ้น

Saturday, March 3, 2012

Merida Matts 70D

จักรยานเสือภูเขายี่ห้อ Merida รุ่น Matts 70 ดิสก์เบรค
- ตัวถัง 6061 Aluminum Alloy
- เกียร์ SRAM X5 27 สปีด
- ดิสก์เบรก น้ำมัน Tektro
- เฟรมขนาด 18 นิ้ว
- ราคา 14,600 บาท



Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D
Merida Mattz 70DMerida Mattz 70D

Tuesday, February 21, 2012

รอบเมืองภูเก็ต 3 วัน 2 คืน


วันแรก - เมืองเก่า - พิพิธภัณฑ์สัตว์น้ำ - แหลมพรหมเทพ
ออกเดินทางโดยรถทัวร์ขึ้นที่หมอชิต ประมาณ 6 โมงเย็น
ถึงภูเก็ตก็เช้าพอดี 7 โมงครึ่ง ลงที่ขนส่ง เดินออกมาด้านหน้ามีร้านขายมอเตอร์ไซค์ ปกติวันละ 300 เช่าหลายวันหรือหลายคันก็ขอลดเขาได้ ผมได้วันละ 200 เสร็จแล้วก็ขับตรงออกมาเจอหอนาฬิกาดังรูป เจออะไรก็แวะจอดถ่ายรูป เราไม่รีบอยู่แล้ว วนไปวนมาแถวถนนพังงา ถนนถลางนี่แหละย่านเมืองเก่า อาหารเช้าก็ร้านดัง อรุณโภชนา มีโรตีกับชาชัก ข้าวยำ ข้าวหมก อาหารใต้ทั่วไป

ปลายๆถนนถลางก็มีซอยรมณีย์อันเลื่องชื่อ มีบ้านเก่าๆสีสวยๆดังรูป คล้ายมะละกาแต่น้อยกว่า เจอคณะทัวร์แวะมาเดินตลอด แวะถ่ายรูปจนสุดถนน ก็ไปหาที่พัก

พักที blumonkey จองทาง agoda 690 กว่าบาท รวมค่าโน่นค่านี่ 2 คืนโดนไป 1,500 กว่าต่อห้อง ห้องพักใหม่มาก ตกแต่งสวยใช้ได้ ฝากกระเป๋าไว้ก่อน บ่ายๆค่อยกลับมาเช็กอิน

สะพานหินอยู่ไม่ไกลจากย่านเมืองเก่า เลยไปชมสักนิด แต่ปกติเขาจะมาวิ่งเช้าๆกัน มีศาลเจ้าจีนอยู่ด้วย

แล้วก็ออกไปหาข้าวเที่ยงกิน พอดีมีเพื่อนเป็นเจ้าถิ่นบ้านอยู่แถววัดฉลอง เลยไปชมวัดฉลองก่อน แล้วเพื่อนก็พาไปกินส้มตำแถวจุดชมวิวเขาขาด วนไปแหลมพันวา มีพิพิธภัณพ์สัตว์น้ำค่าเข้าชมแค่ 50 บาท





วันที่ 2 - เกาะไข่
เที่ยวเกาะไข่ครึ่งวัน ลงเรือสปีดโบ้ทที่ท่าเรือ TNG ในเกาะสิเหร่ ราคาทั่วไปคนละ 1,200 บาท ให้เพื่อนจองให้ลดเหลือ 600 ^^ เกาะไข่อยู่ไม่ไกล นั่งเรือ 15 นาทีถึงเกาะแรก เกาะไข่ใน ให้เราเดินเล่นชายหาดและดำน้ำสน็อกเกิ้ลแถวๆชายหาด ปลาจะรีบว่ายมาหาคน เพราะเขานิยมให้นักท่องเที่ยวซื้อขนมปังมาให้ปลา (ถ้าไปดำน้ำแถวเกาะช้า
งเขาจะห้ามให้อาหารปลา กลัวปลาจะเสียนำสัย) แค่ริมหาดปลาก็เต็มแล้ว ชายหาดมีหินก้อนใหญ่สวยๆอยู่เยอะ แต่ถ้าจะเข้าไปใกล้ก็ดูให้ดี เพราะมีงูทะเลอยู่จริงๆตามคำขู่ของไกด์ ดำ+เดินเกาะแรกอยู่ 1 ชั่วโมงก็ไปดำเกาะที่ 2 เกาะไข่นุ้ย เกาะเล็กนิดเดียว ไม่มีชายหาดให้เรือเข้าไปเกาะ ได้แต่ดำน้ำรอบๆเรือ ดำอยู่ไม่ถึงครึ่งชั่วโมงก็ไปเกาะไข่นอก ทั้ง 3 เกาะอยู่ไม่ไกลกัน นั่งเรือ 5 นาที เก่าสุดท้ายเขาให้ relax เสียค่าเปลนั่ง 150 มีแซนวิชกับผลไม้เลี้ยง เที่ยงๆก็กลับ

บ่ายไปกินอาหารทะเลที่ปากน้ำซีฟู้ด อยากรู้ว่าอาหารใต้แท้เผ็ดยังไงให้สั่ง แกงส้มหอยจุ๊บ รับรองเผ็ดจนหน้าแดง

วันสุดท้าย - ป่าตอง
กินอาหารเช้าแถวเมืองเก่าเช่นเคย แวะเข้าไปชมพิพิธภัณฑ์ไทยหัว ค่าเข้า 50 บาท ถ้ามีกล้อง 200 กล้องมือถือไม่เป็นไร แล้วก็ขี่มอเตอร์ไซค์วนเที่ยวตามหาดต่างๆ

จากถนนเยาวราชตรงไปป่าตองแค่ 18 กิโล แต่ไปเที่ยงๆแดดเผาจนแสบหน้า หาอะไรกินแถวป่าตองหรือไม่ก็เข้าห้างจังซีลอน ร้านก็เหมือนห้างในกรุงเทพ แล้วจากป่าตองก็ขี่เลียบหาดไปเรื่องจะผ่านกาดสุรินทร์ หาดกมลา แล้ววนกลับมาทางอนุสาวรีย์ท้าวเทพกษัตรี-ท้าวศรีสุนทร มีพิพิธภัณฑ์ถลางอยู่ใกล้ๆ (ปิดวันจันทร์และอังคาร)

แล้วก็วนกลับเข้าเมือง แวะถ่ายสิ่งก่อสร้างทุกอย่างที่สวยงาม เก่าแก่ พักร้อนที่ร้านกาแฟใต้หอนาฬิกาที่เจอตอนมาวันแรกนั่นแหละ เย็นๆก็เอามอเตอร์ไซค์ไปคืนแล้วไปรอ Airport Bus ที่ขนส่ง เที่ยวสุดท้ายออก 6 โมง โดนไปคนละ 75 บาท บริการเหมือนรถปอ.ในกรุงเทพ แต่ราคาแพงกว่า จอดรับส่งคนทุกป้าย คนเยอะก็ต้องยืนโหน

จอง Air Asia เที่ยว 3 ทุ่มกว่า หิวเลยไปกินเชสเตอร์กริลล์ในสนามบิน โดนไปจานละ 165 บาท (ปกติจานละ 59 มั้ง) กะว่ากลับมาถึงสุวรรณภูมิ 5 ทุ่มกว่า ทันรถ Airport Link ซึ่งหมดเที่ยงคืน แต่เครื่องดันมาถึงเที่ยงคืนพอดี เลยต้องเสียค่าแท็กซี่กลับที่พัก

Wednesday, February 1, 2012

Buyincoins.com เว็บขายอุปกรณ์ติดจักรยาน

http://www.buyincoins.com/ เป็นเว็บจากจีนที่ราคาถูกและส่งจริง แถมถ้าเราสั่งหลายชิ้น ราคาจะลดลง ค่าส่งฟรีอีกต่างหาก ไม่มีราคาขั้นต่ำ สั่งชิ้นเดียวก็ส่ง แต่อาจจะใช้เวลารอนานหน่อย ประมาณ 2-3 สัปดาห์กว่าจะมาถึง

อุปกรณ์ส่วนใหญ่ก็เป็นพวกไฟ แบตเตอรี่ ไปจักรยานคู่ละ 60 ไมล์จักรยานอันละ 100 ลองเข้าไปดูกันได้ที่

นอกจากอุปกรณ์จักรยานก็ยังมีอุปกรณ์อื่นๆอีก จริงๆอุปกรณ์จักรยานเป็นแค่ส่วนย่อย ยังมีอุปกรณ์ iPhone เช่นฟิล์มกันรอยชิ้นละ 30 บาท

Friday, January 20, 2012

กะดีจีน

กะดีจีน หรือ กุฎีจีน ก็แล้วแต่จะเรียก เป็นชุมชนเก่าแก่แก่งหนึ่งของกรุงเทพ อยู่แถวๆสะพานพุทธฝั่งธน ความพิเศษของชุมชนแห่งนี้คือการผสมผสานระหว่าง 4 วัฒนธรรม คือ พุทธ คริสต์ อิสลาม และจีน มาที่นี่คุณจะได้เจอทั้งวัด โบสถ์คริสต์ มัสยิด และศาลเจ้าจีน ตั้งอยู่ใกล้ๆกัน

Sunday, January 1, 2012

EXTJS: refresh/reload ข้อมูลใน grid ใหม่ โดยไม่ต้องโหลดหน้าใหม่

grid จะแสดงข้อมูลที่ได้มาจาก store วิธีการก็คือ เราก็ดึงข้อมูลใหม่มาใส่ store แล้วให้ grid มาอ่านข้อมูลจาก store ตัวนี้ แล้วก็สั่ง grid ให้ refresh view
ตัวอย่าง
var response = Ext.decode(result);
storeSM = new Ext.data.Store({
proxy: new Ext.ux.data.PagingMemoryProxy(response),
remoteSort: true,
sortInfo: { field: "Date", direction: "ASC" },
reader: new Ext.data.ArrayReader({
fields: [{ name: "Id" },
{ name: "Date" },
{ name: "Status" }]
})
});
grid.store = store;
store.load({ params: { start: 0, limit: 20} });
grid.getView().refresh();


result ในที่นี้คือเราไปทำ Ajax select ข้อมูลส่งมาในรูป JSON

Thursday, December 1, 2011

SQUID: การตั้ง proxy บล็อคเว็บไซต์ตามช่วงเวลาที่กำหนด

Squid สามารถบล็อคเว็บไซต์เป็นบางวัน บางช่วงเวลาตามที่เราต้องการได้ วิธีการมี 2 ขั้นตอนด้วยกัน

1. สร้างไฟล์ใส่ชื่อเว็บที่ต้องการ เป็น text file ธรรมดา

vi myblockweb


สมมุติจะบล็อค facebook กับ pantip ข้างในไฟล์ myblockweb ก็พิมพ์

facebook.com
pantip.com


แล้วก็ save

2. แก้ไฟล์ squid.conf (ปกติก็อยู่ใน /etc/squid) ค้นหาบรรทัด bsex แล้วแก้ไขคำสั่งการ Blockweb ใหม่ ดังนี้

#blockweb จันทร์-ศุกร์ บล็อคช่วงเวลา 08.30 - 12.00 น. และ  13.00 - 17.30 น.
acl time_block time M T W H F 08:30-12:00
acl time_block time M T W H F 13:00-17:30

#blockweb เสาร์ ช่วงเวลา 09.00 - 12.00 น. และ 13.00 - 17.00 น.
acl time_block time A 09:00-12:00
acl time_block time A 13:00-17:00

# บล็อคเว็บที่อยู่ในไฟล์ myblockweb
acl bsex url_regex "myblockweb"
http_access deny bsex time_block
deny_info http://www.mycompany.com/deny.htm bsex time_block


M T W H F คือวัน จันทร์ อังคาร พุธ พฤหัส ศุกร์
A คือวันเสาร์
ถ้าจะบล็อควันอาทิตย์ด้วยก็เพิ่มตัว S ไปหลัง time
ตรงที่เป็น http://www.mycompany.com/deny.htm คือให้เด้งไปที่หน้านี้ ถ้ามีคนเข้าเว็บที่เราบล็อค

Saturday, October 1, 2011

C#: There is already an open DataReader associated with this Command which must be closed first

เมื่อคุณเจอ error: There is already an open DataReader associated with this Command which must be closed first.
เช่นตอนวนลูป while ตัวอย่างเช่น

ConnectionStringSettings connSettings = ConfigurationManager.ConnectionStrings["MyConnectionString"];
string connString = connSettings.ConnectionString;
SqlConnection conn = new SqlConnection(connString);

string strSQL = "SELECT * FROM MyTable1 WHERE DelFlag=1";
SqlCommand cmd = new SqlCommand(strSQL, conn);
SqlDataReader reader = cmd.ExecuteReader();
while (reader.Read())
{
string strSQL2 = "UPDATE MyTable2 SET DelFlag=1 WHERE RefId = '" + reader["Id"].ToString() + "'";
SqlCommand cmd2 = new SqlCommand(strSQL2, conn);
cmd2.ExecuteNonQuery();
cmd2.Dispose();
}
reader.close();
cmd.Dispose();


run ไปจะเจอ error นี้


วิธีแก้


ดูตรงเปิด connection ด้านบน

SqlConnection conn = new SqlConnection(connString);

ให้เพิ่ม MultipleActiveResultSets=True ลงไป เป็น


SqlConnection conn = new SqlConnection(connString + "MultipleActiveResultSets=True");

แค่นี้ก็เรียบร้อย

Thursday, September 1, 2011

C#: ไม่มีไฟล์ App.config

ถ้าคุณสร้างโปรเจ็คต์ Windows Form ใหม่ แล้วไม่มีไฟล์ App.config เพื่อใส่ค่า Configuration ต่างๆ เช่น ConnectionString ก็สามารถใส่ไฟล์ App.config ได้โดยการ

  1. คลิกขวาที่ชื่โปรเจ็คต์ เลือ Properties
  2. คลิกที่แท็บ Settings แล้วตรง Name กรอกอะไรเล่นๆสักค่าหนึ่ง ตรง Value ก็กรอกเล่นๆ
  3. Save แล้วลองรันโปรแกรมดู 
ทีนี้ไฟล์ App.config ก็จะโผล่มาใน Solution Explorer ให้คุณแก้ค่าได้ตามปกติ

Monday, August 1, 2011

SQL Server: RowNumber หมายเลขบรรทัดอัตโนมัติ

ถ้าเราต้องการจะแทรกหมายเลขบรรทัดอัตโนมัติ

SELECT ROW_NUMBER() OVER (ORDER BY StudentId DESC) AS RowNumber, * FROM Student


วิธีนี้สามารถเอาไปใช้ในการทำ paging หรือการแบ่งหน้าได้ เช่นถ้าเราต้องการ select เฉพาะรายการที่ 1000 ถึง 1100

with X as (SELECT ROW_NUMBER() OVER (ORDER BY StudentId DESC) AS RowNumber, * FROM Student)
select top 100 * from X where RowNumber >= 10000

Friday, July 1, 2011

MySQL: ย้าย Table ไป Database อื่น ใน Server เดียวกัน

ใช้คำสั่ง rename

สมมุติว่าจะย้ายตารางชื่อ tbl_name จาก database ชื่อ current_db ไปยัง other_db

RENAME TABLE current_db.tbl_name TO other_db.tbl_name;

บรรทัดเดียวเสร็จ ไม่ว่าจะเข้าทาง command line หรือใช้ phpMyAdmin

หรือถ้าคุณไม่อยากย้าย แต่อยากจะ copy คือจะสร้าง table ใหม่ให้เหมือน table เดิมเป็น และ table เดิมยังอยู่ ก็ใช้

CREATE TABLE MyNewTable SELECT * FROM MyOldTable;

ก็จะได้ table ใหม่ชื่อ MyNewTable ที่มีโครงสร้างและข้อมูลเหมือน MyOldTable เป๊ะ ถ้าจะ copy table ข้าม database ด้วย ก็ใส่ชื่อ database. ข้างหน้าชื่อ table

ข้อควรระวัง วิธีนี้พวก Index หรือ Primary Key และพวก Auto_Increment ที่ตั้งไว้ใน table ต้นทางจะไม่ตามไปด้วย เราต้องทำเพิ่มใน table ปลายทางเอง ทางที่ดีควรจะสร้างสคริปต์ Create Table ไปสร้างใน database ใหม่ แล้วค่อยใช้คำสั่งย้ายข้อมูลคือ

INSERT INTO NewDB.NewTable SELECT * FROM OldDB.OldTable

Wednesday, June 1, 2011

SQL Server: การ join ข้าม database

เวลาคุณจะ join ตารางที่อยู่คนละ database หรือจะเพิ่มข้อมูลใน database หนึ่ง โดยการ select มาจากอีก database หนึ่ง ไม่ใช่ว่าอยู่ดีๆคุณก็จะทำได้ รายชื่อ table ที่คุณสามารถ join กัน หรือ select ร่วมกันได้จะอยู่ใน sys.servers ลอง

select * from sys.servers

ถ้ามีชื่อ server ที่คุณจะ join อยู่ในนี้ก็แสดงว่า join ได้ คำสั่งในการ join ก็เช่น

SELECT TOP 20 * FROM [MyServer1].[DBTest].[dbo].[Product] a 
INNER JOIN [MyServer2].[DBReal].[dbo].[Products] b ON a.code = b.code

การที่จะทำให้ MyServer1 กับ MyServer2 join กันได้ตามคำสั่งด้านบน คุณต้องเพิ่มชื่อ server ใน sys.servers เสียก่อน ถ้าคุณ log in ใช้ MyServer1 อยู่ ก็ run คำสั่งต่อไปนี้

EXEC sp_addlinkedserver @server='MyServer2' 

แล้วก็ต้องเพิ่ม user ที่ใช้ในการ log in เข้า MyServer2 ด้วย

EXEC master.dbo.sp_addlinkedsrvlogin  @rmtsrvname=N'MyServer2',  
@useself=N'False',
@locallogin=NULL,
@rmtuser=N'mydbuser',
@rmtpassword='mypassword'
GO

แค่นี้ก็เรียบร้อย