A-AA+then

ขอวิธีที่จะ Login หน้าเว็บที่ติด catcha รูปสุึ่มตัวเลขหน่อยครับ

1,748
ผมอยากจะ เขียนโค้ดให้สามารถ เรียกหน้าเว็บที่มีการ Login user ที่ให้กรอก username password catcha(รูปตัวเลขสุ่ม) แล้วก็กด submit ได้ โดยอยู่ในเพจที่เราสร้างขึ้น ข้อมูลหลังจากการ Login ก็โชว์อยู่ในเพจที่เราสร้างขึ้นนะครับ

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

อันนี้ผมลองเขียนดูครับ แต่มันส่ง status กลับมาเป็น 0 ซึ่งผมใช้วิธีเรียก page มาดูจาก iframe ก่อน <iframe src="www.xxx.com"> เพื่อจะดู catcha แล้วกด button เพื่อเข้า function การทำงานด้านล่าง ซึ่งมัน return status กลับมาเป็น 0 ก็เลยคิดว่า ตอนเรียก catcha จาก iframe กับตอน post ค่ากลับไป มันอาจจะเป็น catcha คนละตัวกัน สรุปวิธีนี้ผมก็มั่วๆ เอานะครับยังใช้ไม่ได้ ขอความเห็นเพื่อนๆ คนอื่นๆ หน่อยนะครับว่ามีวิธีอย่างไรบ้าง ขอโค้ดด้วยก็ดีครับ

    var req = Inint_AJAX();
    req.onreadystatechange = function () {
      if (req.readyState==4) {
        if (req.status==200) {
          var ret=req.responseText;//รับค่ากลับมา
          document.getElementById("login_table").innerHTML=ret;
        }
      }
    };
    req.open("POST", "http://www.xxxx.com"); //สร้าง connection
    req.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); //header
    req.send("username="+encodeURIComponent(username)+
      "&passwd="+encodeURIComponent(passwd)+
      "&catcha="+encodeURIComponent(catcha)); //ส่งค่า

3 ความคิดเห็น

ตัวอย่างเต็มๆ เลยก็ GCMS เวอร์ชั่น 3 ครับ
1

ขอบคุณครับพี่ gOragod พอจะแนะสโคบให้แคบลงกว่านี้หน่อยได้ไหมครับ ตอนนี้กำลังโหลดไปลองใ้ช้อยู่นะครับ ต้องใช้วิธีอะไร function วิธีการ นะครับ
2

ไม่มีอะไรครับ captcha ก็เป็นแค่ input ตัวหนึ่งเหมือนกับ input อื่นๆ บนฟอร์ม ถ้าเราส่งค่า input อื่นใดไปได้เราก็ส่ง captcha ไปได้ ด้วยวิธีเดียวกัน

ตัวอกษรภายในรูปภาพ ถูกสุ่มมาแสดง แล้วเก็บไว้ (ด้วยวิธีใดก้ได้ตามถนัด) ถ้าเป็น GCMS ผมเก็บลง session ไว้

เวลาแสดงรูปจะมีโค้ดเฉพาะ เพื่อแสดงรูป เพราะต้องอ่านจาก php ให้เป็นรูปภาพโดยการแสดงตัวอักษรจะถูกอ่านออกมาจาก session ตามที่เก็บไว้

เวลาตรวจสอบ ก็อ่านจาก session มาตรวจสอบ กับที่ส่งไป ด้วย php ธรรมดา

หลักการของ captcha ใดๆก็คงเหมือนกันหมด จะแตกต่างกันก็ตรงวิธีจัดเก็บข้อมูลตัวอักษรที่ได้สุ่มไว้เท่านั้น ซึ่งก็แล้วแต่ความถนัดหรือการประยุกต์ใช้ของแต่ละบุคคล
3
^