ผมจะทำการค้นหาข้อมูลโดยการกรอกช่องการค้นหา 2 ช่อง โดยข้อมูลที่จะออกมาแสดงต้องตรงตามเงื่อนไขที่ กรอกจาก
ช่องที่ 1 และ 2  ถ้ากรอกเพียงช่องเดียว หรือช่องใคช่องหนึ่ง หรือไม่ตรงกับเงื่อนไขที่กำหนอก็ไม่แสดงข้อมูล

ผมได้ทำตามอาจารย์แนะนำแล้ว โดยการกำหนด

req.send('find2.php' ,  'user=' + encodeURIComponent(input.value) + '&user2=' + encodeURIComponent(input.value) , function(xhr) {

พอรันแล้วมันไม่เป็นไปตามเงื่อนไข ถ้ากรอกช่องที่ 1 ข้อมูลก็แสดง ถ้ากรอกช่องที่ 2 ข้อมูลก็แสดงเช่นกัน แล้วแต่ว่าการกรอกค้นหาในช่องนั้นๆ จะมีข้อมูลหรือไม่

ผมจะต้องกำหนดเงื่อนไข ยังไงหรือครับ
กรกฎ วิริยะ 05 Feb 2010 12:09
ถ้าส่งไปแบบนี้ ก็ไป if ที่  php เอาสิครับ ว่า ช่องไหนส่งข้อมูลมา

แนวคิดง่ายๆ ก็คือ

ตอนส่ง เราจะส่งค่าที่ต้องการไปกี่ค่าก็ได้ จะส่งไปทั้งหมด หรือคัดเลือกค่าที่ต้องการก็ได้

ตอนรับ เมื่อเรารับค่ามาแล้ว ก็เอาค่าที่ได้มาคัดแยก หรือ เอาไปทำอย่างอื่นให้เป็นไปตามต้องการ

การส่งค่ากลับ ถ้ามีหลายๆค่า แนะนำให้ส่งกลับเป็น [search]JSON[/search] เพราะในตอนแปลงกลับจะง่ายกว่า

ตอนรับค่ากลับมาแสดงผล ถ้าเราส่งค่ากลับมาเป็น JSON เราก็สามารถ ใช้ฟังก์ชั่น string.toJSON() เพื่อแปลงกลับเป็น JSON และนำผลลัพท์ที่ได้ไปจัดการแสดงผลที่เหมาะสม

แนวคิดนี้มีใช้ใน GCMS ตอนสมัครสมาชิกครับ มีหลักการคล้ายๆกัน