Home Webboard ArticlesKnowledges  
ข่าวประกาศ:

:: กติกา มารยาท ในการใช้งานเว็บบอร์ด ::
กรุณากรอกอีเมล์จริงในการสมัคร และรับอีเมล์ยืนยันเพื่อใช้งานในบอร์ด
ถ้าไม่พบเมล์ลองดูที่ถังขยะ..!!


Welcome to       :: JustUsers.net ::       การให้ ... คือสิ่งที่เรามีเหมือนกัน       กลับมารับใช้เพื่อนๆ เหมือนเดิมตลอดไป....!!    

ผู้เขียน หัวข้อ: อัพเกรด เวอร์ชั่นใหม่ แล้วชื่อหัวข้อกระทู้ หายไป ทุกครั้ง  (อ่าน 9197 ครั้ง)

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

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33
.

เวลาผมอัพเกรด เวอร์ชั่นใหม่ แล้วเจอปัญหา ชื่อหัวข้อกระทู้ หายไป ทุกครั้ง

ทุกครั้งที่อัพเกรดเวอร์ชั่นใหม่ๆ ตั้งแต่ V.1.1.9 / V.1.1.10 / V.1.1.11
จนมาถึงเวอร์ชั่นปัจจุบัน 1.1.12

หัวข้อกระทู้ บางกระทู้ (ส่วนใหญ่) มันจะหายไป บางกระทู้ ก็ถูกตัดคำ เหลือสั้นๆนิดเดียว

สาเหตุของมันก็คือ... เป็นที่ DB 

ปรกติแล้ว ผมเข้าไปแก้ใน phpmyadmin
ตรงส่วนของ subject --->> ผมแก้ให้เป็น  --->>  mediumtext
เพื่อให้ ตั้งหัวข้อกระทู้ได้ยาวขึ้น
แล้วก็ใช้งานมาได้ดี เป็นปรกติมาตลอด เป็นปีๆ

แต่ถ้าพออัพเกรด เวอร์ชั่นใหม่ ทุกครั้ง

ตรงส่วนของ subject .....ที่ผมแก้ให้เป็น  mediumtext
มันจะกระเด้งกลับ กลายมาเป็น tinytext

(มีภาพประกอบอยู่ข้างล่าง)

มันเป็นอย่างนี้ ทุกครั้งที่ผม อัพเกรดเวอร์ชั่น เลยครับ

พออัพเกรด เสร็จแล้ว
ชื่อกระทู้ มันก็หายไปทุกครั้ง
แล้วก็ต้องกลับไปแก้ ให้มันกลายเป็น mediumtext เหมือนกัน ทุกครั้งเลยครับ

ต้องมาตามแก้ เพื่อใส่ชื่อกระทู้ใหม่ เป็นร้อยๆ กระทู้ ทุกครั้งเลย

ไม่ทราบว่า..
พอจะมีคำแนะนำ และวิธีการแก้ไขอย่างไร ให้ผมบ้างมั๊ยครับ

ขอรบกวนหน่อยนะครับ
ขอบพระคุณมากครับ



« แก้ไขครั้งสุดท้าย: 25 พฤศจิกายน 2553, 08:05:11 น. โดย whitemare »



ออฟไลน์ zelda

  • Just Staff
  • *
  • ID : 5702
  • กระทู้: 474
  • เห็นด้วย&ขอบคุณ: 543
  • เพศ: ชาย
    • www.izedzine.com

จากที่เล่ามา ปัญหามันน่าจะเกิดจากเรื่องของ character ครับ
เห็นฟิลด์ในฐานข้อมูลเป็น UTF8 แล้ว ลองเช็คดูว่า ในส่วนของตัวบอร์ดใช้ Character เป็น UTF8 ด้วยหรือเปล่า
ลองใช้เครื่องมือ convert HTML-Entities to UTF8 Character ในส่วนของการบำรุงรักษาบอร์ดดูครับ
ผมไม่เคยเจอปัญหานี้มานานแล้ว นับตั้งแต่ใช้ UTF8 เป็น default character set (ก่อนหน้านั้นเคยเจอ สมัยหัดเล่น SMF ใหม่ๆ)

ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • ID : 8
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2201
    • SMFjusthost.com
การอัพเกรดเวอร์ชั่นหลังๆมานี่  แก้แค่ตัวโค๊ดเท่านั้น ไม่มีแก้ดีบี 
ถ้าอัพแบบเมนวล ไม่น่าจะจเอปัญหานี้

ออฟไลน์ zelda

  • Just Staff
  • *
  • ID : 5702
  • กระทู้: 474
  • เห็นด้วย&ขอบคุณ: 543
  • เพศ: ชาย
    • www.izedzine.com

ถ้าจำไม่ผิด เวอร์ชั่นสุดท้ายของ 1.1 ที่มีการแก้ฐานข้อมูลร่วมด้วย น่าจะเป็น 1.1.7 ครับ เกี่ยวกับตาราง attachments

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33

จากที่เล่ามา ปัญหามันน่าจะเกิดจากเรื่องของ character ครับ
เห็นฟิลด์ในฐานข้อมูลเป็น UTF8 แล้ว ลองเช็คดูว่า ในส่วนของตัวบอร์ดใช้ Character เป็น UTF8 ด้วยหรือเปล่า


เป็น UTF-8 ครับ ...
ผมดูได้จาก ....ในส่วนผู้ดูแล มันเซ็ทไว้ที่ thai-utf8
ผู้ดูแล   >>  ปรับแต่งบอร์ด  >>  ค่าต่างๆของระบบ   >>  ภาษามาตรฐาน = thai-utf8

ในไฟล์ showtopics.php ที่ใช้อยู่ ก็มีอ้างอิงถึง charset=UTF-8
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">       






การอัพเกรดเวอร์ชั่นหลังๆมานี่  แก้แค่ตัวโค๊ดเท่านั้น ไม่มีแก้ดีบี 
ถ้าอัพแบบเมนวล ไม่น่าจะจเอปัญหานี้


วิธีการ อัพเกรดฯของผม ก็ทำโดย
โยนไฟล์อัพเกรดทั้งหมด ทับลงไปที่ของเดิม...แล้ว RUN ไฟล์ upgrade.php ตามปรกติ
ไม่ได้ทำอะไรพิเศษ พิสดาร เลยหล่ะครับ

ผมเจอปัญหานี้มาตลอดเลยครับ
ทั้งการอัพฯ เพื่อทดสอบ ในเครื่อง http://localhost/
และอัพฯ ขึ้นโฮสจริง (ฟรีโฮสฯ) และโฮสฯ เสียตังค์ (ของเพื่อน)

ทุกครั้งที่อัพเกรดเวอร์ชั่นเสร็จ ก็จะเป็นอย่างนี้ ทุกครั้งเลยครับ

ตรงส่วนของ subject .....ที่ผมแก้ให้เป็น  mediumtext
มันจะกระเด้งกลับ กลายมาเป็น tinytext
ทุกครั้งเลยครับ

------------------------------------------------------------------------


ถ้าพอจะนึกแนวทางแก้ไข ไม่ให้ในส่วนของ DB มันกระเด้งกลับไปเป็น tinytext ได้
รบกวนช่วยบอกด้วยนะครับ



ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • ID : 8
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2201
    • SMFjusthost.com
อ้างถึง
โยนไฟล์อัพเกรดทั้งหมด ทับลงไปที่ของเดิม...แล้ว RUN ไฟล์ upgrade.php ตามปรกติ
ไม่ได้ทำอะไรพิเศษ พิสดาร เลยหล่ะครับ

ตรงนี้แหละที่มันจะส่งผลถึงดีบี 

ใช้เมนวลทำมือไปเลยดีกว่า 
เปิดไฟล์อัพเกรด แล้วไล่แก้ด้วยมือไปเลย

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33
ตรงนี้แหละที่มันจะส่งผลถึงดีบี  

ใช้เมนวลทำมือไปเลยดีกว่า  
เปิดไฟล์อัพเกรด แล้วไล่แก้ด้วยมือไปเลย

อุ๋ยๆๆ...
ผมนึกว่า แบบที่ผมทำอยู่ เป็นแบบปรกติ ที่เรียกว่า "้เมนวลทำมือ" ซ๊ะอีกครับ...เอิ๊กๆๆๆ

แล้วการ "เปิดไฟล์อัพเกรด แล้วไล่แก้ด้วยมือ" มันเป็นยังไงหร๋อครับ ?
พอจะอธิบาย คร่าวๆได้มั๊ยครับ..เผื่อว่า จะนึกออก...
(ขอประทานโทษ นะครับ..ผมไม่รู้เรื่องจริงๆครับ)

ขอบคุณมากครับ
« แก้ไขครั้งสุดท้าย: 25 พฤศจิกายน 2553, 17:18:23 น. โดย whitemare »

ออฟไลน์ เซียวเหล่งนึ่งฯ

  • Global Moderator
  • *
  • ID : 8
  • กระทู้: 5547
  • เห็นด้วย&ขอบคุณ: 2201
    • SMFjusthost.com
1. ดาวน์โหลดตัวอัพเกรดมา หรือจะเอาจากไฟล์แนบในนี้ก็ได้   แล้วแตกไฟล์ จะได้อย่างในรูป
 


2. เปิดด้วยอีดิตพลัส  แล้วก็ไล่เมนวลตามรายละเอียดในนั้นเลย
.11 ไป .12 นี่แก้ไม่เยอะ ไล่จริงๆ ไม่น่าเกินครึ่งชั่วโมงก็คงเสร้จ


« แก้ไขครั้งสุดท้าย: 25 พฤศจิกายน 2553, 18:29:07 น. โดย เซียวเหล่งนึ่งฯ »

ออฟไลน์ zelda

  • Just Staff
  • *
  • ID : 5702
  • กระทู้: 474
  • เห็นด้วย&ขอบคุณ: 543
  • เพศ: ชาย
    • www.izedzine.com

ผมว่ามันต้องมีจุดที่ผิดพลาดซักที่ครับ ปกติที่กำหนดให้ฟิลด์ของหัวข้อเป็นประเภท tinytext นั่นก็เนื่องจากให้สอดคล้องกับที่กำหนดให้ความยาวหัวข้อไม่เกิน 80 ตัวอักษร เนื่องจากเป็นความยาวที่พองาม ไม่ยาวจนเกินไป เพราะหัวข้อควรตั้งให้กระชับ กระทัดรัด ได้ใจความ ส่วนในข้อความจะไปอธิบายให้ยาวหรือละเอียดยังไงก็ได้ ไม่จำเป็นต้องตั้งให้เป็น mediumtext (mediumtext กับ tinytext ต่างกันตรงที่ความยาวของการบรรจุคำ tinytext เก็บได้สูงสุด 256 ตัวอักษร mediumtext รู้สึกจะเก็บได้ราวๆ 16 ล้านกว่าๆตัวอักษร) จะเห็นว่า ถึงเราจะไปเพิ่มให้ความยาวหัวข้อมากขึ้น นั่นก็อยู่ในขอบเขตของ tinytext ที่จะรองรับหรือบรรจุได้เช่นกันครับ (ถ้ามันไม่ยาวเกิน 256 ตัวอักษร ซึ่งปกติหัวข้อที่ดีก็ไม่ควรยาวเกินกว่า 100 ตัวอักษรอยู่แล้ว)

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33
ไม่จำเป็นต้องตั้งให้เป็น mediumtext (mediumtext กับ tinytext ต่างกันตรงที่ความยาวของการบรรจุคำ tinytext เก็บได้สูงสุด 256 ตัวอักษร mediumtext รู้สึกจะเก็บได้ราวๆ 16 ล้านกว่าๆตัวอักษร) จะเห็นว่า ถึงเราจะไปเพิ่มให้ความยาวหัวข้อมากขึ้น นั่นก็อยู่ในขอบเขตของ tinytext ที่จะรองรับหรือบรรจุได้เช่นกันครับ (ถ้ามันไม่ยาวเกิน 256 ตัวอักษร ซึ่งปกติหัวข้อที่ดีก็ไม่ควรยาวเกินกว่า 100 ตัวอักษรอยู่แล้ว)
ขอบคุณมากครับ คุณ zelda
เรื่องนี้ผมไม่ทราบรายละเอียดหน่ะครับ..ผมทำตามคำแนะนำ ที่อ่านเอาตามเวปบอร์ด หน่ะครับ
แต่เท่าที่สังเกต ถ้าเซ็ทเป็น tinytext
ถ้าใช้พิมพ์ ภาษา Eng. ก็ไม่เป็นไรครับ
แต่ถ้าใช้พิมพ์ ภาษาไทย มันจะมีผลทำให้ตัดคำ เหลือสั้นนิดเดียวหน่ะครับ





1. ดาวน์โหลดตัวอัพเกรดมา หรือจะเอาจากไฟล์แนบในนี้ก็ได้   แล้วแตกไฟล์ จะได้อย่างในรูป
 
2. เปิดด้วยอีดิตพลัส  แล้วก็ไล่เมนวลตามรายละเอียดในนั้นเลย
.11 ไป .12 นี่แก้ไม่เยอะ ไล่จริงๆ ไม่น่าเกินครึ่งชั่วโมงก็คงเสร้จ


ขอบพระคุณมากๆๆๆๆ ครับ คุณ เซียวเหล่งนึ่งฯ
นี่เป็นความรู้ใหม่ สำหรับผมเลยครับ..
ผมไม่เคยรู้มาก่อนว่า เค๊าอัพเกรดเวอร์ชั่น กันแบบนี้...  :yaahoo:

เดี๋ยวผมจะลองทำตามที่สอนมา นะครับ
แล้วจะมาแจ้งผลให้ทราบ..ว่าสำเร็จรึป่าว



แต่ตอนนี้...

ความวัวยังไม่หาย....ความช้าง ก็เข้ามาแทรกแล้วครับ..!

ผมว่างจัด..
ก็เลยไปกด คลิ๊กที่ " convert HTML-Entities to UTF8 Character " ที่อยู่ในส่วนของ โหมดบำรุงรักษา
ปรากฏว่า...
ก่อนหน้านี้..ภาษาไทย ก็ใช้ได้เป็นปรกติ..ไม่มีปัญหาอะไรเลยครับ..

แต่พอไปกด " convert HTML-Entities to UTF8 Character "
ภาษาไทย มันเลยเพี้ยน กลายเป็นภาษาต่างดาว ไปเลยครับ..
แก้ยังไง ก็ไม่หาย..

นี่ผมก็นั่งเปิดกระทู้ " สารบรรณ-รวมกระทู้แนะนำ-ติดตั้ง-ปรับแต่ง [SMF] "
แล้วไล่อ่านดู และทดลองแก้ อยู่ทั้งวันทั้งคืน แทบไม่ได้นอนเลย..ก็ยังไม่สำเร็จซ๊ะที

ของเดิม ในไฟล์ Settings.php ตรงบรรทัดสุดท้ายของมันคือ
$db_character_set = 'utf8';
ก่อนหน้านี้ ก็ใช้ได้เป็นปรกติ..
แต่ตอนนี้ ภาษาไทยในส่วนของ เนื้อหา ในกระทู้ มันจะกลายเป็นภาษาต่างดาวไปหมด
แต่ในส่วนของคำอธิบายเวปบอร์ดห้องต่างๆ ไม่เป็นไร ปรกติดี

แต่ถ้าผมทดลอง แก้เป็น
$db_character_set = 'utf-8'; ( utf ขีด 8 )
มันจะสลับกันครับ คือ
ในส่วนของ เนื้อหา ในกระทู้ มันจะ ไม่เป็นไร ปรกติดี
แต่ในส่วนของคำอธิบายเวปบอร์ดห้องต่างๆ มันจะกลายเป็นภาษาต่างดาว

สรุปแล้ว..
ผมทดลองแก้ไป หลายอย่าง เลยครับ..
พอแก้แล้วไม่ได้ผล..ก็แก้กลับมาให้เป็นอย่างเก่า (จะได้ไม่เละเทะ)



อ่านแล้วเงง มั๊ยครับ...

เดี๋ยว คืนนี้ ผมจะลองมั่วๆ ทำด้วยตัวเองดูอีก สักคืนนึง

แต่ ถ้ายังไม่สำเร็จ...

อาจจะต้องรบกวน คุณ เซียวเหล่งนึ่งฯ อีกสักครั้งนะครับ

ขอบพระคุณมาก ครับ




« แก้ไขครั้งสุดท้าย: 26 พฤศจิกายน 2553, 18:46:27 น. โดย whitemare »

NoName

  • บุคคลทั่วไป
convert HTML-Entities to UTF8 Character แล้วเป็นภาษาต่างดาว มีปัจจัยอยู่ 2 อย่างครับ

1. ฟิลด์ในตารางยังไม่เป็น UTF-8 (เป็นเฉพาะตาราง)
2. โฮสต์ไม่รองรับ UTF-8

ในไฟล์ Settings.php 2 ตำแหน่งที่จะเป็น UTF-8

1. บรรทัดที่ 34
โค๊ด: [เลือก]
$language = 'thai-utf8'; # The default language file set for the forum.
2. บรรทัดที่ 64 (สุดท้าย)
โค๊ด: [เลือก]
$db_character_set = 'utf8';
ทั้งส่วนไฟล์ Settings.php และในฐานข้อมูลจะแสดงออกมาในส่วนข้อความที่โพสต์ จะไม่เกี่ยวกับคำสั่งการใช้งานในส่วนต่างๆ ของบอร์ด ถ้าส่วนคำสั่งใช้งานมีปัญหาต้อง Encoding ไฟล์ภาษา

และการจะต้องการเพิ่มจำนวนตัวอักษรในหัวข้อไม่จำเป็นต้องแก้ในฐานข้อมูลเลยครับ แก้ในไฟล์ Post.template.php หาตัวเลข 80 แล้วแก้ไขเอาเลย แต่ไม่แนะนำครับ เพราะจำนวน 80 เป็นจำนวนที่เหมาะสมดีแล้ว

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33

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

ในไฟล์ Settings.php
ทั้ง 2 ตำแหน่งที่เป็น UTF-8 อย่างที่คุณบอกครับ

1.)  $language = 'thai-utf8';      # The default language file set for the forum.

2.)  $db_character_set = 'utf8';

---------------------------------------------------------------

เพิ่มเติมนะครับ...

ตอนนี้..เท่าที่สังเกตดู...

" เนื้อหาในกระทู้...ที่เป็นของเดิม ก่อนเกิิดเรื่อง "
มันจะเป็น ภาษาต่างดาว ครับ

แต่ถ้าเรา " ตั้งกระทู้ใหม่ " หรือ " โพสข้อความใหม่ๆ ลงไปใหม่ "
ภาษาไทย มันก็จะ เป็นปรกติ ครับ..
เหมือนไม่มีปัญหาอะไรเลย...

ที่กังวล ก็คือ...
กระทู้เก่าๆ ก็เท่ากับเสียไปเลย...อ่านไม่ออก หน่ะครับ..
อยากให้มันกลับมาอ่านออก ได้เหมือนเดิม หน่ะครับ

พอจะมีทางแก้ไข มั๊ยครับ

NoName

  • บุคคลทั่วไป
แก้ได้ครับ ดูในกระทู้สารบัญที่คุณเซียวเหล่งนึ่งฯ อ้างมาจาก UnclEo ในกระทู้นั้นรวมต้นเหตุปัญหา และวิธีแก้ปัญหาภาษาต่างดาวของ smf ไว้ครบถ้วนแล้วครับ ในกระทู้นั้นยังบอกไว้ด้วยว่าเมื่อคุณ convert HTML-Entities to UTF8 Character แล้วข้อความเป็นภาษาต่างดาว แสดงว่าคุณมาถูกทางแล้ว พยามทำความเข้าใจ และทำตามขั้นตอนก็แก้ได้ไม่ยากครับ หรือจะให้ช่วยเหลือก็ติดต่อที่ u=1444 ครับ

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33

แก้ได้ครับ ดูในกระทู้สารบัญที่คุณเซียวเหล่งนึ่งฯ อ้างมาจาก UnclEo ในกระทู้นั้นรวมต้นเหตุปัญหา และวิธีแก้ปัญหาภาษาต่างดาวของ smf ไว้ครบถ้วนแล้วครับ ในกระทู้นั้นยังบอกไว้ด้วยว่าเมื่อคุณ convert HTML-Entities to UTF8 Character แล้วข้อความเป็นภาษาต่างดาว แสดงว่าคุณมาถูกทางแล้ว พยามทำความเข้าใจ และทำตามขั้นตอนก็แก้ได้ไม่ยากครับ หรือจะให้ช่วยเหลือก็ติดต่อที่ u=1444 ครับ

ขอบพระคุณ คุณ NoName มากครับ

ผมจะรีบไปทำตามที่แนะนำเดี่ยวนี้เลยครับ
จะไปเปลี่ยนให้เป็น utf8_general_ci ให้หมด
เสร็จแล้ว จะมารายงานผล ให้ทราบนะครับ

u=1444  <<-- มันคืออะไร หร๋อครับ (ผมไม่ทราบหน่ะครับ)

ออฟไลน์ whitemare

  • Just M
  • ***
  • ID : 8771
  • กระทู้: 31
  • เห็นด้วย&ขอบคุณ: 33

มารายงานผลครับ

สิ่งที่ผมทำไป คือ :
1.) Encoding database ใน phpmyadmin ให้ทั้งหมดกลายเป็น utf8_general_ci ให้หมด
2.) อัพโหลด ไฟล์ภาษาไทย .thai-utf8.php ทับลงไปใหม่ ทั้งหมด

ผลก็คือ : ยังเหมือนเดิมครับ

" เนื้อหาในกระทู้...ที่เป็นของเดิม ก่อนเกิิดเรื่อง "
มันจะเป็น ภาษาต่างดาว ครับ

แต่ถ้าเรา " ตั้งกระทู้ใหม่ " หรือ " โพสข้อความใหม่ๆ ลงไปใหม่ "
ภาษาไทย มันก็จะ เป็นปรกติ ครับ..
เหมือนไม่มีปัญหาอะไรเลย...

อยากให้ กระทู้เก่า ที่ภาษาเพี้ยนไป กลับมาอ่านออก ได้เหมือนเดิม หน่ะครับ

พอจะมีอะไรแนะนำเพิ่มเติม มั๊ยครับ

ขอบพระคุณมากนะครับ

 
ชื่อ: อีเมล์:
ยืนยัน:
จงเขียนชื่อจังหวัด "นะคอนสีทำมะราด" ให้ถูกต้อง:

ใส่รูปในกระทู้ คลิก >>
Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 
                                           
Back to top