เนื่องจากเขียนเรื่อง Ajax มาหลายครั้งแหละเว็บยุคนี้นั้นคงจำเป็นต้องใช้มันอย่างหลีกเลี่ยงได้ยาก แล้วการเก็บข้อมูลสถิติของ Google analytic นั้นในสมัยก่อนไม่สามารถเก็บข้อมูลตรงการคลิกแล้วตอบสนองอย่างที่ Ajax ทำได้เพราะฉะนั้นวันนี้จึงมีเรื่องการทำงานของ Google analytic กับ Ajax ให้มันไปด้วยกันได้ครับ
Category Archives: Ajax
ข้อควรระวังเมื่อใช้ Ajax ตอนที่ 2
เอาล่ะวันนี้มาลุยกับภาคสองกันว่า มีอะไรบ้างใหม่ๆ หวังว่าจะเป็นประโยชน์แก่ทุกคนที่เขียนด้านนี้นะครับ คงไม่ต้องร่ายอะไรเยอะแล้วนะครับไปดูกันเลย
ข้อควรระวังเมื่อใช้ Ajax
อาจจะเรียกว่าเว็บโปรแกรมเมอร์สมัยนี้ไม่อาจจะหลีกเลี่ยงได้เลยกับการใช้ Ajax เพราะว่ามันตอบสนองได้คล้ายกับพวกโปรแกรมที่รันบนระบบปฏิบัติการ ไม่ต้องทำการ refresh หน้าไปมาน่ารำคาญ แต่หลายๆคนรวมทั้งผมด้วยนั้น อาจจะพลาดในบางเรื่องและบางจุดวันนี้ผมจะเอาประสบการณ์ที่เจอมาเล่าสู่กันฟังจ้า
[Pantip3G] Javascript ajax call error !!?
วันนี้จะว่ากันถึงเรื่องตกม้าตายเรื่องหนึ่งในการทำงานของผมตอนที่เขียนโค้ด Pantip3G โดยมีปัญหาด้าน Ajax เรียกหน้า PHP แล้วจะรับค่าคืนมาเป็น JSON ซึ่งผมก็เขียนแบบง่ายโดยใช้ jQuery function $.post ซึ่งมันก็ง่ายๆไม่มีอะไรประเด็นคือไม่ได้ค่าอะไรกลับ … ลองจับ bug เองแล้วตอนแรกเข้าใจว่าอาจจะส่งค่า type ผิดเพราะถ้าเรากำหนดเป็น JSON แต่ว่าถ้าเราส่งกลับมาเป็น String มันจะไม่เห็นซึ่งอันนี้เป็นบทเรียนมาครั้งหนึ่งแล้ว
โอเค … เช็คแล้วไม่เจอก็เลยไปลอง debug อีกแบบคือไป debug ที่หน้า PHP ว่ามันเกิดอะไรขึ้น ค่าที่ส่งกลับมานั้นเป็น JSON หรือไม่ หรือว่ารูปแบบที่จัดนั้นไม่ถูกต้องก็ลองไปปิดทีละบรรทัดดู ก็ปรากฎว่ามันรันได้ถ้าปิดทีละบรรทัด แต่ให้มันเป็น array ทั้งชุดแล้วส่งกลับมาเป็น JSON นั้นทำไม่ได้ เฮ้อ … ปวดกะบาล ทำไมฟ่ะ !!?
ก็มีอีกกรณีคือผมใช้ function foreach ข้อมูลแล้วเก็บใส่ array ทีเดียวแล้ว echo JSON ออกมา ลองให้มันวนรอบเดียวแล้ว print_r ออกมาปรากฎว่า … ได้โว้ย ! อ้าวแล้วทำไมให้มันวนทุกรอบไม่ได้ว่ะ !!? คิดไม่ออกเลยไป search หาคำตอบจากอากู๋ ว่ามันเกิดอะไรขึ้น สรุปได้ว่า ผมใช้ค่าแปรเกิน limit บรรทัดของมันเพราะว่าผมรัน 700 แถวที่เป็น JSON 1 แถวของผมมี array มากมายอีกด้วยจึงกินไปอีกหลายบรรทัด เช่น
[php]
{ ‘_id’ : 1 , name : ‘tong’ , …. , status : 1 }
,{ ‘_id’ : 2 , name : ‘tith’ , …. , status : 1 }
ซึ่งละว่ามันเยอะมากต่อ 1 แถวข้อมูล
[/php]
จึงไม่ return อะไรออกมาเลยเพราะว่ามันเกิน limit ก็เป็นสิ่งที่ต้องจำไว้แต่จริงๆคิดว่ามันน่าจะปรับได้ว่าให้เท่าไรอย่างไร สำหรับข้อมูลที่เยอะๆ
ไว้โอกาสหน้าจะมาเล่าให้ฟังน้า
Login by Ajax
Login by Ajax
จากคราวที่แล้วผมได้เปิดเรื่องเกี่ยวกับการใช้ Ajax เบื้องต้นโดยเริ่มจากการ Hello world with Ajax หลายคนสงสัยว่าแล้วเวลาเอาไปใช้จริงนั้นเราควรจะทำไง แล้ววิธีการส่งด้วยค่าแบบ POST ล่ะทำอย่างไร วันนี้มีคำตอบให้แล้วครับสำหรับบทนี้คือ ( รัวกลอง ) Login by Ajax ( เฮ้ๆๆๆ วิ้ด วิด แปะๆๆๆ ) ว่าแล้วไปดูกันเลยดีกว่าครับไม่ยากเลย
