Wednesday, September 16, 2009

วิธีลบรายการสั่งซื้อออกจาก Magento

ในขั้นตอนการพัฒนาเวบด้วย Magento มีบ้างที่ต้องลบรายการสั่งซื้อทั้งหมดเพื่อเริ่มต้นใหม่ ในเมนูของ Magento มีแค่การยกเลิกการสั่งซื้อ ไม่มีการลบออกจากระบบ ดังนั้นเราจึงต้องทำผ่านฐานข้อมูลโดยตรง ด้วยคำสั่งเหล่านี้


SET FOREIGN_KEY_CHECKS=0;

TRUNCATE `sales_order`;
TRUNCATE `sales_order_datetime`;
TRUNCATE `sales_order_decimal`;
TRUNCATE `sales_order_entity`;
TRUNCATE `sales_order_entity_datetime`;
TRUNCATE `sales_order_entity_decimal`;
TRUNCATE `sales_order_entity_int`;
TRUNCATE `sales_order_entity_text`;
TRUNCATE `sales_order_entity_varchar`;
TRUNCATE `sales_order_int`;
TRUNCATE `sales_order_text`;
TRUNCATE `sales_order_varchar`;
TRUNCATE `sales_flat_quote`;
TRUNCATE `sales_flat_quote_address`;
TRUNCATE `sales_flat_quote_address_item`;
TRUNCATE `sales_flat_quote_item`;
TRUNCATE `sales_flat_quote_item_option`;
TRUNCATE `sales_flat_order_item`;
TRUNCATE `sendfriend_log`;
TRUNCATE `tag`;
TRUNCATE `tag_relation`;
TRUNCATE `tag_summary`;
TRUNCATE `wishlist`;
TRUNCATE `log_quote`;
TRUNCATE `report_event`;

ALTER TABLE `sales_order` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_datetime` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_decimal` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_int` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_text` AUTO_INCREMENT=1;
ALTER TABLE `sales_order_varchar` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_address` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_address_item` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_item` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_quote_item_option` AUTO_INCREMENT=1;
ALTER TABLE `sales_flat_order_item` AUTO_INCREMENT=1;
ALTER TABLE `sendfriend_log` AUTO_INCREMENT=1;
ALTER TABLE `tag` AUTO_INCREMENT=1;
ALTER TABLE `tag_relation` AUTO_INCREMENT=1;
ALTER TABLE `tag_summary` AUTO_INCREMENT=1;
ALTER TABLE `wishlist` AUTO_INCREMENT=1;
ALTER TABLE `log_quote` AUTO_INCREMENT=1;
ALTER TABLE `report_event` AUTO_INCREMENT=1;

-- reset customers
TRUNCATE `customer_address_entity`;
TRUNCATE `customer_address_entity_datetime`;
TRUNCATE `customer_address_entity_decimal`;
TRUNCATE `customer_address_entity_int`;
TRUNCATE `customer_address_entity_text`;
TRUNCATE `customer_address_entity_varchar`;
TRUNCATE `customer_entity`;
TRUNCATE `customer_entity_datetime`;
TRUNCATE `customer_entity_decimal`;
TRUNCATE `customer_entity_int`;
TRUNCATE `customer_entity_text`;
TRUNCATE `customer_entity_varchar`;
TRUNCATE `log_customer`;
TRUNCATE `log_visitor`;
TRUNCATE `log_visitor_info`;

ALTER TABLE `customer_address_entity` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `customer_address_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_datetime` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_decimal` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_int` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_text` AUTO_INCREMENT=1;
ALTER TABLE `customer_entity_varchar` AUTO_INCREMENT=1;
ALTER TABLE `log_customer` AUTO_INCREMENT=1;
ALTER TABLE `log_visitor` AUTO_INCREMENT=1;
ALTER TABLE `log_visitor_info` AUTO_INCREMENT=1;

-- Reset all ID counters
TRUNCATE `eav_entity_store`;
ALTER TABLE `eav_entity_store` AUTO_INCREMENT=1;

SET FOREIGN_KEY_CHECKS=1;


เท่านี้รายการสั่งซื้อก็จะหายวับไปกับตา ฉะนั้นโปรดระวัง อย่าได้ไปทำกับ Production server และจงมีสติตลอดเวลา มิฉะนั้นอาจหัวขาดได้

ที่มา http://inchoo.net/ecommerce/magento/delete-test-orders-in-magento/

Thursday, August 27, 2009

“รอบหนัง เชียงใหม่”

เสาร์ที่แล้ว พี่อ้อ (กูเกิล ประเทศไทย) ได้โชว์การค้นหารอบหนังในงานสัมนาของชมรมไอทีเพื่อสังคม ผมแย้งไปว่ามันไม่เวิร์ค แต่ที่พี่แกโชว์ให้ดูมันเวิร์ค เลยกลับมาลองที่บ้าน

นึกว่าเป็นเพราะ default encoding ของ Firefox เพราะผมตั้งค่าให้เป็นภาษาอังกฤษ แต่ก็ไม่ใช่

2552-08-23_1030-Firefox

หรือว่าเป็นเพราะ Chrome ก็ไม่ใช่

2552-08-23_1031-Chrome

เอ๊ะๆ หรือว่าเป็นเพราะ google.co.th ฮั่นแน่! มาแล้วไงรอบหนัง

2552-08-23_1033-chrome

ขอดูรายละเอียดหน่อยซิ

2552-08-23_1037-firefox-detail

ทีนี้ดูได้ซะที

2552-08-23_1046-firefox-movie-detail

ลองดูครับ เป็นประโยชน์ไม่น้อย เพราะเว็บหนังเมืองไทยมันห่วย

Monday, August 3, 2009

Gmail tips every day for me

แต่ละวันเมล์เยอะมาก นอกจากใช้ Label ช่วยแล้ว ยังมีอีกสองสามอย่างที่ใช้ประจำ เช่น

เวลาอยากดูอีเมล์ที่ยังไม่ได้อ่าน ให้พิมพ์ is:unread แล้วกดค้นหา (Search)

ถ้าอยากดูเฉพาะใน inbox ก็พิมพ์ is:inbox

ถ้าอยากดดูเฉพาะอีเมล์ที่ยังไม่ได้อ่านใน inbox ก็ค้นหา is:inbox is:unread

บางครั้งเราก็ใส่เครื่องหมายไว้ ก็พิมพ์ is:star

คาดว่าคงสามารถค้นหาเป็นวัน, เดือน หรือปีได้ แต่ัยังไม่ได้ลอง ถ้าได้ลองแล้วจะมาเล่าให้ฟังนะ

Thursday, May 14, 2009

คำถามโง่ๆ ประจำวันนี้

เมื่อเช้าดูเรื่องเล่าเช้านี้
ความสนุกของรายการนี้คือ SMS ส่งผู้ชมทางบ้านส่งเข้าร่วมสนุก วันนี้เจอคำถามอยู่คำถามนึง

"ถ้าอยากให้เลิกเหล้ายุหรี่ แล้วยังจะผลิตมาทำไม?"

โอ้! ถามโง่ๆ ผมก็จะตอบโง่ๆ นะครับ

"ก็คนผลิต กับคนบอกให้เลิก มันคนละคนกันครับ"

Monday, May 11, 2009

Note: Magento

ช่วงนี้สนใจ Magento ลองเล่นดูแล้ว เลยโน๊ตไว้เสียหน่อย

  • ใช้ Zend framework นั่นหมายความว่า ถ้าเข้าใจ Zend ก็เข้าใจ Magento หรือ ถ้าเข้าใจ Magento ก็เข้าใจ Zend
    หากอยากหาแรงจูงใจ ในการประยุกต์ใช้ Zend framework ในการใช้งานจริง Magento ถือเป็นจุดเริ่มต้นที่เข้าท่ามาก
  • ต้อง PHP 5 เท่านั้น แต่นะ ใครเค้ายังใช้ PHP 4 กัน
  • Database engine ต้องเป็น InnoDB engine นะจ๊ะ ไม่งั้นติดตั้งไม่ผ่าน
  • 250 Tables OMG!
  • ความเร็ว ยังเป็นสิ่งที่ต้องปรับปรุงอย่างเร่งด่วน
  • ระบบออกแบบไว้ดีมากๆ โดยเฉพาะแนวคิดเรื่อง Block layout มันช่วยให้ออกแบบหน้าเว็บ แยกแต่ละหมวดหมู่สินค้า หรือแม้แต่รายสินค้าได้
  • เรื่องภาษาไทย ยังไม่ได้ลอง เห็นคร่าวๆ ว่ามี magento.in.th ไว้แล้ว ให้เดาคงเป็น @joomlacorner จากทีมจูมล่าไทย พี่แกเสือปืนไวอยู่แล้ว

ผมทดสอบทั้งในเครื่องผมเอง และลงใน EC2 พบว่าการใช้ Magento ใน EC2 นั้น ความเร็วก็ไม่ได้เลวร้ายมากนัก หากทำการปรับแต่งทั้งในส่วนของ Webserver, Database server และตัว Magento เอง ประสิทธิภาพ น่าจะดีกว่านี้ เอาไว้ลองแล้วได้ผลยังไง จะมาเล่าให้ฟังอีกที