1. Gửi bài viết mới (new topic)
- Code:
$.post("/post", {
mode: "newtopic",
f: "<forum_id>",
subject: "<Tiêu_đề>",
message: "<Nội_dung>",
post: "Ok"
}).done(function (data) {
// Xử lý các lỗi từ chối như giới hạn thời gian, chưa đăng nhập, chuyên mục khóa...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
2. Trả lời bài viết (reply)
- Code:
$.post("/post", {
mode: "reply",
t: "<topic_id>",
message: "<Nội_dung>",
post: "Ok"
}).done(function (data) {
// Xử lý các lỗi từ chối như có người vừa gửi trước đó, giới hạn thời gian, chưa đăng nhập, chủ đề khóa...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
3. Gửi tin nhắn riêng (pm)
- Code:
$.post("/privmsg", {
mode: "post",
subject: "<Tiêu_đề>",
message: "<Nội_dung>",
"username[]": "<Tên_người_nhận>",
u: "user_id_người_nhận",
folder: "inbox",
post: "Ok"
}).done(function (data) {
// Xử lý các lỗi từ chối như giới hạn thời gian, chưa đăng nhập, sai thông tin người nhận, cấm gửi thư...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
4. Viết lên tường (wall)
- Code:
$.post("/privmsg", {
subject: "<Tiêu_đề>",
message: "<Nội_dung>",
username: "<Tên_người_nhận>",
u: "user_id_người_nhận",
mode: "post_profile",
folder: "profile",
post: "Ok"
}).done(function (data) {
// Xử lý các lỗi từ chối như giới hạn thời gian, chưa đăng nhập, sai thông tin người nhận, cấm đăng tin...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
5. Liên hệ (contact)
- Code:
$.post("/contact", {
subject: "<Tiêu_đề>",
message: "<Nội_dung>",
reg_key: "<Mã_captcha>", // Mã này người dùng nhập từ ảnh: <img src="/antirobot_pic.forum?a=1" alt="regkey" />
action: "submit"
}).done(function (data) {
// Xử lý các lỗi từ chối như cấm đăng liên kết, sai mã captcha, cấm liên hệ...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
6. Tìm kiếm thành viên (search user)
- Code:
$.get("/search?mode=searchuser&fieldname=username", {
search_username: "<Từ_Khóa>",
time: timestamp()
}).done(function (data) {
// Kết quả tìm kiếm sẽ được liệt kê trong danh sách: $(data).find("#username_list")
// Xử lý khi tìm kiếm thành công với các trường hợp không tìm thấy, tìm thấy 1 kết quả, tìm thấy nhiều kết quả
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
7. Sửa thông tin cá nhân (edit profile)
- Code:
$.post("/ajax_profile.forum?jsoncallback=?", {
id: "<field_ID>",
user: "<user_ID>",
active: "1",
content: '[["<field_name>","<Nội dung>"]]',
tid: $("#qjump input[name='tid']").val()
}, {}, "json").done(function (data) {
// Xử lý các lỗi từ chối như sai field ID, sai field name, chưa đăng nhập, cấm sửa field...
// Xử lý khi gửi thành công, kết quả lấy từ: data["<field_ID>"]
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
8. Bỏ phiếu (vote)
- Code:
$.post("<Liên_kết_bỏ_phiếu>").done(function (data) {
// Xử lý các lỗi từ chối như chưa đăng nhập, đã bỏ phiếu, cấm bỏ phiếu...
// Xử lý khi bỏ phiếu thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
9. Bình chọn (poll)
- Code:
$.post("/post", {
t: "<topic_id>",
topic_id: "<topic_id>",
"vote_id[]": "<vote_id>",
mode: "vote",
tid: $("#qjump input[name='tid']").val(),
submit: "Ok"
}).done(function (data) {
// Xử lý các lỗi từ chối như sai topic ID, sai vote id, chưa đăng nhập, cấm bình chọn...
// Xử lý khi gửi thành công
}).fail(function () {
// Xử lý khi lỗi do sever như rớt mạng, quá tải...
}).always(function () {
// Xử lý khi kết thúc tiến trình
});
Chú ý: Đối với 1, 2, 3, 4 phải tắt chức năng chống ủy quyền, nếu không bạn sẽ cần phải bổ sung tham số auth[]
ACP >> QLTT >> Forum >> Security:
Unauthorize unofficial forms to post messages and private messages on the forum : No
Nguồn:
ZzBaivong
Tags: #jquery #tips #Ajax