ข่าวประชาสัมพันธ์

มาร่วมเป็นกำลังใจให้เว็บด้วยการสมัครสมาชิกวีไอพี ~~ เลือกปีที่ท่านต้องการได้โดยไม่ต้องเรียงปี ~~ ปีละ 350 บาท สมัคร 2 ปีลดเหลือ 600 บาท ~~ มีไลน์กลุ่ม VIP จำนวนหลายร้อยท่าน เอาไว้ปรึกษางานซ่อม ~~ เข้าถึงข้อมูลด้านเทคนิค ข้อมูลเชิงลึกมากมาย.....


ผู้เขียน หัวข้อ: เพิ่ม Smileys ให้กับ SMF ฉบับคนขี้เกียจ  (อ่าน 1142 ครั้ง)

0 สมาชิก และ 1 บุคคลทั่วไป กำลังดูหัวข้อนี้

ออฟไลน์ Auto Man

  • Administrator
  • หัวหน้าศูนย์ซ่อมสร้าง
  • *****
  • เจ้าของกระทู้
  • Joined: ก.ย. 2558
  • กระทู้: 37392
  • สมาชิกลำดับที่ : 1
  • เพศ: ชาย
  • มือผู้ให้ย่อมสูงกว่ามือผู้รับ
    • เว็บชุมชนคนรักช่างยนต์
    • อีเมล์
เพิ่ม Smileys ให้กับ SMF ฉบับคนขี้เกียจ
« เมื่อ: 11 มีนาคม 2563, 17:31:24 »
  • ขึ้นบน
  • ลงล่าง

  • ด้วยความอยากเพิ่ม Smileys หรือ emo ให้กับ webboard ที่ใช้ smf อยู่ เลยลองไปหา Smileys ตามเนตดู ปรากฎว่าจำนวน smileys ที่หาได้นั้นมันเยอะเหลือเกิน (ประมาณ 400 กว่ารูป) ถ้าจะไปนั่งเพิ่ม smileys ที่ละรูปนี่ไม่ไหวแน่ๆ เลยมานั่งเขียน php script ให้ script มันสร้างไฟล์ sql มาแล้วเอาไฟล์นั้นไปใส่ในฐานข้อมูลแทนของเดิมน่าจะไวกว่า หลังจากที่เขียนและทดสอบเสร็จแล้ว เลยเอามาแจกให้คนที่ใช้ smf อยู่เอาไปใช้งานกันบ้างครับ

    โค๊ด: [Select]
    <?PHP
    $path = "more";   // โฟล์เดอร์ที่ใช้เก็บ smileys
    $filename = "smgen.sql";   // ชื่อไฟล์ที่ใช้เก็บคำสั่ง sql
    $item_per_row = 10;   // จำนวน smileys/emo ที่จะแสดงใน 1 แถว
    $show_post = 59;   // จำนวน smileys/emo ที่จะแสดงในหน้าโพสต์ข้อความ ในตัวอย่างนี้คือแสดง smileys/emo เฉพาะ 59 ตัวแรก ตัวอื่นๆจะแสดงเป็น popup

    $id = 1;
    $row = 0;
    $order = 0;

    $sql = "INSERT INTO `smf_smileys` (`id_smiley`, `code`, `filename`, `description`, `smiley_row`, `smiley_order`, `hidden`) VALUES\n";
    $file = scandir($path);
    foreach($file as $value)
    {
       if($value=='.' || $value=='..') continue;
       
       if($id<=$show_post)
          $hidden = 0;
       else
          $hidden = 2;
       $sql .= "($id, ':$value:', '$value', '$value', $row, $order, $hidden),\n";
       $id++;
       if(++$order==$item_per_row)
       {
          $order = 0;
          $row++;
       }
    }
    $sql = rtrim($sql, ",\n");
    $sql .= ';';
    echo $sql;
    $handle = fopen($filename, 'w');
    fwrite($handle, $sql);
    fclose($handle);
    ?>

    สำหรับวิธีการใช้งานก็นำ script นี้ไปไว้บนโฮส เช่นเอาไปไว้ที่ forum/Smileys/smgen.php (ในตัวอย่างนี้จะใช้ชื่อไฟล์ smgen.php) แล้วอัพโหลด smileys/emo ไปไว้บนโฮส ในตัวอย่างนี้จะอัพโหลดไปไว้ที่ forum/Smileys/more หลังจากนั้นก็เรียกไฟล์ smgen.php ทำงาน เสร็จแล้ว script smgen.php จะสร้างไฟล์ชื่อ smgen.sql ขึ้นมาและแสดงข้อมูลคำสั่ง sql ในหน้า web browser เราสามารถ import ไฟล์ smgen.sql ไปในตาราง smf_smileys ได้เลย หรือจะนำคำสั่ง sql ที่แสดงในหน้า web browser ไปเพิ่มในลงในตารางโดยใช้ phpMyAdmin ก็ได้ครับ และก่อนที่จะ import ไฟล์นี้เข้าไปต้องลบข้อมูลเก่าในตาราง smf_smileys ออกกอ่นนะครับ

      มาจากที่นี่...
    สวัสดีคุณ...ผู้เยี่ยมชม  กด ❤ ถูกใจโพสท์นี้ หรือยัง...
    ต้องการสมัครสมาชิก VIP สมัครได้ที่นี่...   หรือทาง Line ID: k.sonchai

    เพิ่ม Smileys ให้กับ SMF ฉบับคนขี้เกียจ
    « เมื่อ: 11 มีนาคม 2563, 17:31:24 »