Discuz Thai

 ลืมรหัสผ่าน
 สมัครสมาชิก

ข้อตกลงการใช้งานกระดานข่าวดิสคัสไทย DiscuzThai Agreement (English Version) ประกาศดิสคัสไทย - ทำเนียบดิสคัสภาษาไทย

Discuz! X3.5 Thai R20240520 Rev.9 (NEW) [วิดีโอช่วยสอน] อัปเกรด Discuz! X3.4 เป็น X3.5 Discord ของ Discuz! Thai Community อย่างเป็นทางการ

Discuz! X3.4 Thai R20220811 (REV.75) สิ้นสุดการสนับสนุน Discuz! X3.4 ภาษาไทยตั้งแต่วันนี้เป็นต้นไป (ขอแนะนำให้อัปเกรดเป็น X3.5 แทน)

ค้นหา
แท็กยอดนิยม: ดิสคัสภาษาไทย Discuz Thai
12
กลับไป ตั้งกระทู้ใหม่
เจ้าของ: banksanti

[X1.5] ปลั๊กอิน shoutbox 7.2 ผมนำมาพัฒนาได้แค่นี้เอง... รายละเอียดด้านใน

[คัดลอกลิงก์]
jaideejung007 โพสต์ 2011-3-19 17:07:55
ตอบกระทู้ banksanti ตั้งกระทู้

หลังจากที่ผมโหลด Shoutbox 3.0 ที่คุณ banksanti ไปพัฒนาต่อ มันทำให้ผมได้รู้อะไรหลายๆ อย่างทั้งที่เคยรู้และไม่รู้เกี่ยวกับการทำปลั๊กอินของดิสคัสในครั้งนี้ ลองอ่้านดูนะครับ เผื่อบางท่านมีไอเดียสำหรับการนำไปพัฒนาต่อ

ปลั๊กอิน Shoutbox 3.0 ของคุณ banksanti ที่ผมเอามาพัฒนาต่อนั้น ปัญหาที่ผมเจอดังนี้
      หลังจากติดตั้งปลั๊กอินเสร็จแล้ว ก็ผ่าน พอจะเข้าไปหน้าแชทจะแสดงข้อความ Access Denied ซึ่งมาจากการรันไฟล์ของไฟล์ shoutbox.php ที่ถูกกำหนดค่าไว้ในไฟล์ natz_shoutbox/template/shoutbox.htm ที่มีซอร์สโค๊ดเป็น
  1. shoutbox.base_url = 'source/plugin/natz_shoutbox/shoutbox.php?';
คัดลอกไปที่คลิปบอร์ด
ซึ่งผมลองเข้าไปยังไฟล์ดังกล่าวในเว็บบราวเซอร์ฺดังนีี้ hxxp://localhost/x1.5/source/plugin/natz_shoutbox/shoutbox.php มันก็ขึ้นข้อความดังกล่าว
      ผมเลยลองทดสอบโดยใช้ shoutbox 2.5.0 ติดตั้งด้วยดิสคัส 7.2 โดยใช้ลิงค์ดังกล่าวรันดูก็ทำให้เห็นว่ามันเป็นหน้าว่าง ผมเลยลองเปิดดูไฟล์ natz_shoutbox/template/shoutbox.js เพื่อดูว่าจะมีคำสั่งอะไรหรือเปล่าที่จะให้แสดงข้อความล่าสุดจากการแชทของ Shoutbox ผมก็เจอโค๊ดนี้
  1. shoutbox.ajax('get', shoutbox.base_url+'type=shouts&ids='+ids+'&time='+shoutbox.get_timestamp()+fc, shoutbox.load_ajax_shouts);
คัดลอกไปที่คลิปบอร์ด
ซึ่งมันมีคำว่า
  1. shoutbox.base_url
คัดลอกไปที่คลิปบอร์ด
อยู่ด้วย ผมเลยลองนึกย้อนไปดู ก็พบว่า มันเป็นตัวแปรจาวา ที่ถูกประกาศไว้จากไฟล์ natz_shoutbox/template/shoutbox.htm ของโค๊ดที่ว่า
  1. shoutbox.base_url = 'source/plugin/natz_shoutbox/shoutbox.php?';
คัดลอกไปที่คลิปบอร์ด
ผมเลยลองเอามาแก้ตัวแปรดูก็ได้เป็นแบบนี้
  1. shoutbox.ajax('get', 'source/plugin/natz_shoutbox/shoutbox.php?type=shouts&ids='+ids+'&time='+shoutbox.get_timestamp()+fc, shoutbox.load_ajax_shouts);
คัดลอกไปที่คลิปบอร์ด
ซึ่งผมลองนำที่อยู่ตำแหน่งตะกี้ไปรันหน้าเว็บดูดังนี้ http://localhost/dis7.2/plugins/natz_shoutbox/shoutbox.php?type=shouts&ids= มันก็ทำให้ผมแปลกใจก็คือ มันแสดงข้อความที่แชทล่าสุดครับ อ๊ากกกก จริงๆ ด้วยแบบนี้ครับ
Guest says (Mar. 18, 2011): ทดสอบๆ
admin says (Mar. 18, 2011): หวัดดีครับ
admin says (Mar. 18, 2011): 1234
admin says (Mar. 18, 2011): Welcome to Shoutbox 2.5.0 Modify For Discuz! 7.2 by theerawut modify from acaz
ผมเลยเข้าใจว่า ที่แท้มันก็ใช้จาวาสคริปต์สำหรับอัพเดตข้อความที่แชทล่าสุดคือลิงค์และตัวแปรจาวานี้นี่เอง
      ผมจึงนำที่อยู่ลิงค์ดังกล่าวมาลองทำในส่วนของดิสคัส x1.5 บ้าง ดังนี้ hxxp://localhost/x1.5/source/plugin/natz_shoutbox/shoutbox.php?type=shouts&ids= มันก็ทำให้ผมหมดแรง เพราะมันแสดงข้อความ Access Denied แห้วเลยคราวนี้ นึกว่าจะได้เหมือนกัน
      ผมยังไม่ท้อนะครับ ผมจึงลองเข้่าเว็บขาวแดง.เน็ต เพื่อแอบดูซอร์สโค๊ด Shoutbox ในส่วนของตัวแปร
  1. shoutbox.base_url
คัดลอกไปที่คลิปบอร์ด
ที่ถูกกำหนดค่าไว้จากไฟล์ natz_shoutbox/template/shoutbox.htm และก็ทำให้ผมตกใจอีกครั้ง เพราะสำหรับปลั๊กอิน shoutbox 3.0 ของเว็บขาวแดง.เน็ต เขาไม่ได้ใช้ตำแหน่งเรียกไฟล์ shoutbox.php แบบโดยตรงเหมือนดิสคัส 7.2 แต่อย่างไร แต่เขากลับใช้เป็นค่านี้
  1. shoutbox.base_url = 'plugin.php?id=natz_shoutbox:shout&';
คัดลอกไปที่คลิปบอร์ด
ซึ่งแสดงว่า เราต้องไปกำหนดค่า _GET หรือค่าอะไรก็ไม่รู้ล่ะของปลั๊กอินในแอดมินซีพีของดิสคัส x1.5 อีกที(ซึ่งผมก็ไม่รู้ล่ะทีนี้) ผมเลยลองเอาที่อยู่ลิงค์ไปรันหน้าเว็บดูของเว็บขาวแดง.เน็ตดังนี้ hxxp://forums.khawdang.net/plugin.php?id=natz_shoutbox:shout&type=shouts&ids= ก็จะแสดงข้อความที่สมาชิกเขาแชทกันล่าสุด โดยเราต้องช่วยกันงมหาทางแกะลิงค์ที่อยู่นี้ให้ได้ ว่าเราจะต้องทำอย่างไรบ้าง plugin.php?id=natz_shoutbox:shout&

      และนี่ล่ะคือข้อมูลทั้งหมดที่ผมได้ทำการวิเคราะห์ไปเมื่อคืน ทำให้สรุปได้ว่า ข้อความที่จะแสดงล่าสุดนั้น มันจะเป็นแบบนี้
สำหรับดิสคัส x1.5 ลิงค์คือ hxxp://localhost/x1.5/plugin.php?id=natz_shoutbox:shout&type=shouts&ids=
สำหรับดิสคัส 7.2 ลิงค์คือ hxxp://localhost/dis7.2/plugins/natz_shoutbox/shoutbox.php?type=shouts&ids=

ใครที่จะนำไปพัฒนาต่อ ก็ขอให้นำไอเดียนี้ไปใช้ได้เต็มที่ครับ หากทำได้แล้ว ก็อย่าลืมคนที่รอใช้ด้วยล่ะครับ

Jaideejung007
ทีมแปลภาษา
weratad14 โพสต์ 2011-3-19 17:14:45
-ขอบคุณครับได้ความรู้มากมายเลยทีเดียว- กำลังอยากจะลองพัฒนาปลั๊กอินซักตัว
แต่มันยังติดขัดอยู่
12
กลับไป ตั้งกระทู้ใหม่
ขออภัย! คุณไม่ได้รับสิทธิ์ในการดำเนินการในส่วนนี้ กรุณาเลือกอย่างใดอย่างหนึ่ง ลงชื่อเข้าใช้ | สมัครสมาชิก

รายละเอียดเครดิต

รายชื่อผู้กระทำผิด|Archiver|ดิสคัส ไทย Follow us: Become a fan on facebook. Follow us on Twitter.

GMT+7, 2024-11-26 21:36

Powered by Discuz! X3.4, Rev.66

Copyright © 2001-2021 Tencent Cloud. Licensed

ตอบกระทู้ ขึ้นไปด้านบน ไปที่หน้ารายการกระทู้