26 เมษายน 2555

Internship, DAY 7

วันนี้งานไม่คืบหน้าอย่างรุนแรง เนื่องจากเนื้อหางานเข้าสู่โหมดความรู้เป็น 0 ของจริง เราใช้เวลา 2 ชั่วโมงนั่งงมโข่งหา plug in สำหรับ Auto Complete ใจจริงอยากจะเข้าใจภาษามันจริงๆซะทีจะได้เขียนเองไปเลย แต่ในเวลาอันสั้นคงทำไม่ได้เลยหาตัวช่วยไปก่อน ตอนแรกเจอโค้ด Auto Complete ตัวนึง หลงดีใจคิดว่าได้ใช้แล้วแหงๆ เอาให้พี่ต้องดู พี่ต้องบอกว่านี่มัน Auto Complete สำหรับ Browser เฉยๆนี่ กล่าวคือมันไม่ได้ดึงค่าจาก Database มาโชว์ให้ดูอย่างเดียว คือมันจะจำค่าเก่าที่เราเคยพิมพ์แล้ว Enter ไว้ก่อนหน้าเฉยๆ ไม่ใช่แบบที่เราอยากได้

โชคดีที่รู้ตัวเร็ว ก็ไปนั่งคุ้ยๆต่อ ไปเจอของเด็ดเข้าให้ มันบอกว่าสอนวิธีทำ Google Suggestion อ่านหน้าแรกๆ เข้าใจง่ายมาก เริ่มมีกำลังใจ พออ่านไปถึงหน้าสาม เนื้อหาหายงง แต่เห็นลิ้ง .pdf ก็นึกว่าให้โหลด ที่ไหนได้ เก็บตังค์ตั้ง $5 เมินซะเถอะ 5555

จากนั้นก็งม งม งม งม งม งม งม งม งม นานมากกกกกก ไปโหลดโค้ดชาวบ้านมาลองเล่นก็ไม่รู้เรื่อง ทำไม่ได้ โง่เกิ๊น~ จนกระทั่งทนไม่ไหวไปโวยวายใส่ twitter และ facebook พี่ชินมหาเมพก็แนะนำเว็บนึงมาให้ ซึ่งเป็นเว็บที่เราเคยเข้าไปดูแล้ว แต่ Demo มันกากเลยไม่ได้ใส่ใจ แต่มันทำให้เรารู้ว่า

ต้องโหลดไฟล์ของเค้ามาก่อนถึงจะใช้ได้ Orz

พี่ชินทำให้เรากลับมาเห็นความสำคัญของ jQuery UI อีกครั้ง 555 หลังจากอ่านคู่มือแล้วก็เอาโค้ดตัว Basic สุดของ Auto Complete ไปลองใช้ ปรากฎว่ามันเวิร์กว่ะเว่ยเห้ย! (แต่โก๊ะ พิมพ์ผิดมั่ง ลืมนู่นนี่มั่ง ก็เลยใช้เวลานานอยู่) แต่ตัวอัพเกรดขึ้นมาหน่อยคือดึงข้อมูลจาก Database ของเราเองยังใช้ไม่ได้ เราก็สงสัยสิว่าทำไม ลืมไรอีกฟะ?

ก็อย่างที่บอกไปแต่แรกอะนะว่า Demo มันกากก็ไปคุ้ยๆใน Google ดู แต่หมดอารมณ์อ่านภาษาอังกฤษแล้วก็เลยพยายามคุ้ยหาภาษาไทยแทน แต่คนไทยเท่าที่เคยคุ้ยเจอนี่เขียนสอนอะไรจะมีอยู่ 2 ระดับคือ ง่ายมาก จะง่ายไปไหน นึกภาพเอาไปประยุกต์ใช้ต่อไม่ค่อยออก กับ ยากสลัดผัก โค้ดยาวเป็นหางว่าว เอาไว้สำหรับ Geek คุยกันเอง ใครเจอที่สอนแบบกลางๆ แนะนำหนูบ้างเน้อ จริงๆแล้วไม่ค่อยชอบไปคุ้ยตามเว็บบอร์ดอะ ชอบเข้าเว็บสอนหรือเป็น Blog มากกว่า เว้นแต่จะติดปัญหาก็เจอเว็บบอร์ดที่ช่วยได้บ้างเหมือนกัน (แต่ส่วนใหญ่ไม่ค่อยเวิร์กฟ่ะ Orz)

ลิ้งที่เจอแล้วไม่ค่อยใจจะไม่นำเสนอในนี้ แต่สุดท้ายก็หันกลับไปพึ่งภาษาอังกฤษอีกครั้ง แล้วก็เจอเว็บที่ถูกใจตรงสเปกพอดี เพราะเค้าด่าเจ้าเว็บ jQuery UI เอาไว้เหมือนกันเรื่อง Demo กากเนี่ย แต่ยังไม่ได้ลองใช้ เนื่องจากลองมาเยอะแล้ว มึน (แต่คิดว่าน่าจะใช้ได้แล้วนะ พอเถอะ ไม่ไหวแล้ว TwT) เลยไปลองเช็คดูว่าโค้ด php เราเองนั่นแหละ echo json ได้ไหม (ฟังก็ชั่นมันบังคับว่าต้อง return กลับมาในรูปแบบ json อะ) โดยลองกับโค้ด php เก่าจากงาน Database เผื่อพลาดอะไรจะได้ไม่มีปัญหาทีหลัง

บั๊กก็ตรงนี้ล่ะคับ TwT

มัน echo ภาษาไทยออกมาเป็นอักขระหยึกหยึย


 \u0e21\u0e32\u0e23\u0e34\u0e2a\u0e32 \u0e2a\u0e38\u0e42\u0e01\u0e28\u0e25 แบบนี้อ๊ะ 

ลองเปลี่ยนนู่น ลองนี่ ลบโค้ด



http-equiv=Content-Type content="text/html; charset=utf-8">


ออกจากบรรทัดแรกแล้วใส่


header("content-type:text/javascript;charset=utf-8");


ลงไปในส่วน tag ของ php แทนตามคำแนะนำของพี่ลิ่ว คำสั่งพวก  iconv ไรงี้ก็ลองหมด พี่ต้องมาช่วยแก้บั๊กให้ เปลี่ยน encoding สารพัดแล้วก็ยังไม่ได้

สุดท้าย ใช้วิธี ต่อ string โง่ๆ มันเลย Orz

แต่เราคิดว่ามันไม่น่าจะได้ผลแฮะ ตอนแรกบอกพี่ไปว่าแค่ออกมาเป็นฟอร์มนี้ก็น่าจะได้ (คิดอะไรอยู่เนี่ย = =") แต่จริงๆที่เรา return ออกไปแบบนั้นมันเป็น string ไม่ใช่ฟอร์ม json ก็เลยคิดว่า ยังไงก็น่าจะบรึ้ม Orz


แล้วแบบนี้เมื่อไหร่จะเสร็จ TwT

5 ความคิดเห็น:

  1. จริงๆ ต่อ string ก็ทำได้นะ ถ้าแกทำให้มันพ่นออกมาเป็น json ได้ถูกไวยากรณ์ (แต่มันถึกดิบเถื่อนไร้อารยธรรม)
    เอาเว็บนี้ลองเช็คดูก็ได้ว่าถูกมั้ย http://jsonlint.com/

    ปล. แต่ถ้าเป็นเรา เรายอมใช้วิธีดิบเถื่อนไร้อารยธรรมนะ 555+

    ตอบลบ
    คำตอบ
    1. ตกลงได้จริงๆหรอวะ 55555

      ลบ
    2. ถ้าหมายถึงวิธีดิบเถื่อนล่ะก็ ได้นะ

      ลบ
    3. เราลองได้มาตั้งแต่เมื่อวานแล้วแต่ลืมบอกต่อ string กันเป็น array โง่ๆยังได้เลย อึ้งมาก เดี๋ยวจะเขียนบล็อกล่ะ ดองนานเกิน 5555

      ลบ
  2. ส่วนใหญ่ทุกอย่างที่คิดว่าใช้งานได้ จะต้องซื้อทั้งนั้น ...

    ตอบลบ