S¡|€n7 โพสต์ 2011-6-24 21:46:24

[DIY] ชื่อกระทู้มากกว่า 80 ตัวอักษร

ชื่อกระทู้มากกว่า 80 ตัวอักษร

mySqlALTER TABLE `pre_forum_post` CHANGE `subject` `subject` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL
ALTER TABLE `pre_forum_thread` CHANGE `subject` `subject` CHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL

เพิ่มเนื้อหา (2011-6-24 21:47):
ขออภัย นึกว่าจะกด Edit ได้ กลับไม่มีให้กดซะงั้น

เพิ่มเนื้อหา (2011-6-24 21:51):
ขอความกรุณากับผู้ดูแล ให้แก้ไขกระทู้ได้ด้วยครับ

เพิ่มเนื้อหา (2011-6-24 21:54):
รอหน่อยนะครับ รอให้ผม edit ได้ก่อน เดี๋ยวมาต่อให้จบ

S¡|€n7 โพสต์ 2011-6-24 21:49:27

แก้ไขครั้งสุดท้ายโดย S¡|€n7 เมื่อ 2011-7-8 01:06

แก้ไขครั้งสุดท้ายโดย S¡|€n7 เมื่อ 2011-7-8 01:01

แก้ไขครั้งสุดท้ายโดย S¡|€n7 เมื่อ 2011-7-8 00:57

เปิดไฟล์

[*]template\default\forum\forumdisplay_fastpost.htm
[*]template\default\forum\post_editor_extra.htm

ค้นหาstrLenCalc(this, 'checklen', 80);เปลี่ยนเป็นstrLenCalc(this, 'checklen', 255);เปิดไฟล์

[*]source\function\function_post.php

ค้นหาif(dstrlen($subject) > 80) {
        return 'post_subject_toolong';
}เปลี่ยนเป็นif(dstrlen($subject) > 255) {
        return 'post_subject_toolong';
}เปิดไฟล์

[*]static\js\common.js
ค้นหาfunction mb_strlen(str) {
        var len = 0;
        for(var i = 0; i < str.length; i++) {
                len += str.charCodeAt(i) < 0 || str.charCodeAt(i) > 80 ? (charset == 'utf-8' ? 3 : 2) : 1;
        }
        return len;
}function mb_cutstr(str, maxlen, dot) {
        var len = 0;
        var ret = '';
        var dot = !dot ? '...' : '';
        maxlen = maxlen - dot.length;
        for(var i = 0; i < str.length; i++) {
                len += str.charCodeAt(i) < 0 || str.charCodeAt(i) > 80 ? (charset == 'utf-8' ? 3 : 2) : 1;
                if(len > maxlen) {
                        ret += dot;
                        break;
                }
                ret += str.substr(i, 1);
        }
        return ret;
}function strLenCalc(obj, checklen, maxlen) {
        var v = obj.value, charlen = 0, maxlen = !maxlen ? 200 : maxlen, curlen = maxlen, len = strlen(v);
        for(var i = 0; i < v.length; i++) {
                if(v.charCodeAt(i) < 0 || v.charCodeAt(i) > 80) {
                        curlen -= charset == 'utf-8' ? 2 : 1;
                }
        }
        if(curlen >= len) {
                $(checklen).innerHTML = curlen - len;
        } else {
                obj.value = mb_cutstr(v, maxlen, true);
        }
}เปลี่ยนเป็นfunction mb_strlen(str) {
        var len = 0;
        for(var i = 0; i < str.length; i++) {
                len += str.charCodeAt(i) < 0 || str.charCodeAt(i) > 255 ? (charset == 'utf-8' ? 3 : 2) : 1;
        }
        return len;
}function mb_cutstr(str, maxlen, dot) {
        var len = 0;
        var ret = '';
        var dot = !dot ? '...' : '';
        maxlen = maxlen - dot.length;
        for(var i = 0; i < str.length; i++) {
                len += str.charCodeAt(i) < 0 || str.charCodeAt(i) > 255 ? (charset == 'utf-8' ? 3 : 2) : 1;
                if(len > maxlen) {
                        ret += dot;
                        break;
                }
                ret += str.substr(i, 1);
        }
        return ret;
}function strLenCalc(obj, checklen, maxlen) {
        var v = obj.value, charlen = 0, maxlen = !maxlen ? 200 : maxlen, curlen = maxlen, len = strlen(v);
        for(var i = 0; i < v.length; i++) {
                if(v.charCodeAt(i) < 0 || v.charCodeAt(i) > 255) {
                        curlen -= charset == 'utf-8' ? 2 : 1;
                }
        }
        if(curlen >= len) {
                $(checklen).innerHTML = curlen - len;
        } else {
                obj.value = mb_cutstr(v, maxlen, true);
        }
}

MasterTGZ โพสต์ 2011-6-26 19:33:23

แก้ไขครั้งสุดท้ายโดย MasterTGZ เมื่อ 2011-6-26 21:12

บอกตามตรงว่าอ่านแล้วมึนมาก
น่าจะบอกวิธีสำหรับคนไม่รู้ด้วยนะครับ
แต่พอจะเข้าใจอยู่ เพราะพอจะเคยแก้อยู่ :lol
แต่ผมว่า คนไม่รู้คงจะงง :L

ps.เพิ่มเติม แต่ยังไงก็ขอบคุณมากครับ sm945dz

tonklapayai โพสต์ 2011-9-5 22:03:42

ขอบคุณมากๆ ครับ

จะทำการแก้ไขเดียวนี้เลยครับพี่น้อง

jow_nuer โพสต์ 2011-12-6 17:50:31

ขอบคุณมากๆ นะคะ

beerqazasa โพสต์ 2011-12-25 08:29:08

ขอำฟล์สำเร็จเลยไม่ได้หรอ แบบนี้ งง มากมายsm920dz

apiwatsook โพสต์ 2012-1-12 12:40:31

เจ๋งๆๆๆหาอยู่พอดีเลยครับ

apiwatsook โพสต์ 2012-1-12 12:54:53

งง มากเลยพี่ ไฟล์ที่พี่บอกมาโค้ดมันไม่คตรงกันอ่า

apiwatsook โพสต์ 2012-1-13 11:52:09

ทำได้แล้วครับแต่ใสรูป ไอคอนไม่ได้

apiwatsook โพสต์ 2012-1-13 11:52:45

ทำได้แล้วครับ แต่ใส่รูปไอคอนไม่ได้
หน้า: [1]
ดูในรูปแบบกติ: [DIY] ชื่อกระทู้มากกว่า 80 ตัวอักษร