jaideejung007 โพสต์ 2009-8-25 18:16:03

มีสคริปต์ใส่ Commas ให้กับตัวเลขแล้ว แต่โมไม่เป็นช่วยด้วยครับ

แก้ไขล่าสุด jaideejung007 เมื่อ 2009-8-26 19:11

ใครมีสคริปต์ หรือฟังก์ชั่น PHP เกี่ยวกับ การใส่คอมม่า(Comma) ',' ให้กับตัวเลขเราน่ะครับ

คือผมเห็นในบอร์ด SMF(ขออนุญาตอ้างอิงบอร์ดอื่นนะครับ)

เวลาเขาแสดงรายละเอียด ของแต่ละคนในแต่ละกระทู้ใช่ไหมครับ

มันจะบอกจำนวนโพสที่เราโพสน่ะครับ เหมือนดิสคัสนี่แหละ

จะแสดงแบบนี้

กระทู้: 1,261

ผมอยากให้บอร์ดดิสคัสเรา ทำแบบนี้บ้าง น่ะครับ

แบบว่าให้ใส่เครื่องหมาย Comma ในจำนวนกระทู้เรา และจำนวนเครดิตและอื่นๆ ที่เกี่ยวกับตัวเลข ตั้งแต่หลักพันขึ้นไป

จากแบบนี้น่ะ
โพสแล้ว: 2429
หัวข้อสำคัญ: 2
เครดิต: 15064
คูปอง: 9725
ความดี: 4975
โหวต: 70
ระดับการ: 200
ออนไลน์: 1264 ชัวโมง
.
v
ให้เป็นแบบนี้
โพสแล้ว: 2,429
หัวข้อสำคัญ: 2
เครดิต: 15,064
คูปอง: 9,725
ความดี: 4,975
โหวต: 70
ระดับการ: 200
ออนไลน์: 1,264 ชัวโมง

ซึ่งผมว่า การใส่ Comma ในจำนวนตัวเลขตั้งแต่หลักพันขึ้นไป จะทำให้คนอ่าน ได้อ่านง่าย เข้าใจง่าย เพราะมีเครื่องหมาย Comma คั่นจำนวนในแต่ละหลักด้วย

รบกวนเพื่อนๆ ใครเคยเห็นสคริปต์แบบนี้ที่ไหน ก็วานบอกลิงค์

หรือไม่ก็ตั้งกระทู้ใหม่เลยนะครับ

จะได้นำไปใช้และนำไปขอบคุณที่เว็บเลย

ขอบคุณครับ

ปล. ผมว่าทุกคนในนี้ก็อยากได้เหมือนกันใช่ไหมครับ(ผมคิดเดาถูกป๊ะ)

ปล2. ใครตอบเม้นท์ ผมจะกด+1 ให้เลยครับ(อ้อ ไม่ได้ติดสินบนนะครับ จะกด+1 ให้จากใจจริงเลย และถ้ากดได้มากกว่านี้ก็จะกดให้เลย)

ปล3. รบกวนหน่อยนะครับ ใครช่วยผมครั้งนี้ ผลบุญกุศล ขอให้คุ้มครองคนที่ช่วยเหลือผมครั้งนี้ ตลอดไป(สาธุ)











---------------------------------------------------
เจอแล้วครับ

ตรงที่สำหรับแสดง จำนวนเครดิต, โพส, หัวข้อสำคัญ และอื่นๆ

หรือหากไม่เข้าใจก็มองดูรายละเอียดโปรไฟล์ของคุณ ทางด้านซ้ายมือคุณน่ะครับ

นั้นล่ะครับ สิ่งที่ผมต้องการแก้ไข

จาก จำนวนโพสที่เป็นตัวเลข 1254 ให้เป็น 1,254

มันจะอยู่ที่ DISCUZ_ROOT\include\cache.func.php

ประมาณบรรทัดที่ 940-970 ครับ

จะเป็นข้อความแบบนี้$customauthorinfo = array();
                        if(is_array($data['customauthorinfo'])) {
                              foreach($data['customauthorinfo'] as $key => $value) {
                                        if(array_key_exists($key, $authorinfoitems)) {
                                                if(substr($key, 0, 10) == 'extcredits') {
                                                      $v = addcslashes('<dt>'.$authorinfoitems[$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                } elseif(substr($key, 0, 6) == 'field_') {
                                                      $v = addcslashes('<dt>'.$authorinfoitems[$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                } elseif($key == 'gender') {
                                                      $v = '".('.$authorinfoitems['gender'].' == 1 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_male'].' </dd>', '"').'" : ('.$authorinfoitems['gender'].' == 2 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_female'].' </dd>', '"').'" : ""))."';
                                                } elseif($key == 'location') {
                                                      $v = '".('.$authorinfoitems[$key].' ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"').'" : "")."';
                                                } else {
                                                      $v = addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                }มันจะอยู่ในรูปแบบของ Tag <dd>
เช่น<dd>'.$authorinfoitems[$key].' </dd>ยังไง ท่านทั้งหลายที่เก่งๆ การโมไฟล์ php ก็ขอรบกวนช่วยโมให้หน่อยนะครับ

ขอบคุณนะครับ สำหรับการเข้ามาอ่าน และหากตอบจะขอบคุณมากๆ เลย

ขอให้เจริญในหน้าที่การงานนะครับ สาธุให้เลยครับผม


Writer: Jaideejung007

deknakhon โพสต์ 2009-8-26 07:48:39

ถ้ารู้ว่า ส่วนในเป็นการนำตัวเลขมาแสดงสามารถเขียนเพิ่มให้ได้ครับ   
number_format("xxxxxx",2)   xxxxxx ค่าตัวแปรของโปรแกรมครับ
เช่นnumber_format("$Price",2)ถ้าตัวเลข 100 ก็จะได้100.00 ถ้า 1000 ก็จะได้1,000.00    ผมยังใหม่กับบอร์ดนี้discuzมากครับ เลยไม่รู้ว่า ไหนทำอะไรบ้าง ลองให้แนวผมก็ได้เดียวแก้ให้ครับ

jaideejung007 โพสต์ 2009-8-26 12:14:10

แก้ไขล่าสุด jaideejung007 เมื่อ 2009-8-26 13:03

อ้อ ใช่เหมือนกันครับ

ผมก็ลืมคิดไปว่า ส่วนไหน ที่มันจะแสดง ค่าตัวเลขอ่า(โค๊ดซับซ้อนจริงๆ -- หรือเราไม่รู้เรื่องเอง)

เฮ้อ ผมคงหมดหวัง แล้วสิ

เฮ้อ แต่ก็ขอบคุณ deknakhon มากๆ นะครับ ที่แนะแนวทางให้

ขอให้เจริญๆ มีความสุขตลอดไปและตลอดไปครับ

กด+1 ให้ แทนคำแนะแนว และคำขอบคุณ

โจ้คัฟ

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

ได้แล้วครับ สำหรับ ฟังก์ชั่นให้แสดงค่า คอมม่า

$test_number=1462;

//เพิ่ม commas ตัวเลข โดยตัดเศษส่วน
print("<b>เพิ่ม commas ตัวเลข โดยตัดเศษส่วนเป็น</b>: ".number_format($test_number) .

"<BR><BR>");

//เพิ่ม commas ตัวเลข โดยต้องการทศนิยม 2 ตำแหน่ง
print("<b>เพิ่ม commas ตัวเลข โดยต้องการทศนิยม 2 ตำแหน่ง</b>: ".number_format

($test_number,2) . "\n");

เมื่อรันผ่านหน้าเว็บก็จะเป็น
เพิ่ม commas ตัวเลข โดยตัดเศษส่วนเป็น: 1,462

เพิ่ม commas ตัวเลข โดยต้องการทศนิยม 2 ตำแหน่ง: 1,462.00


.
.
แต่จะติดปัญหา ตรงที่เราจะไปทำการดึงค่าจำนวนกระทู้ หรือเครดิต ของเราที่ไหน ดีน่ะสิ

เราจะรู้ได้ไงว่า ตัวแปร ต่างๆ มันอยู่ตรงไหน

เฮ้อ ทำไงดีน๊อ

jaideejung007 โพสต์ 2009-8-26 19:08:18

เจอแล้วครับ

ตรงที่สำหรับแสดง จำนวนเครดิต, โพส, หัวข้อสำคัญ และอื่นๆ

หรือหากไม่เข้าใจก็มองดูรายละเอียดโปรไฟล์ของคุณ ทางด้านซ้ายมือคุณน่ะครับ

นั้นล่ะครับ สิ่งที่ผมต้องการแก้ไข

จาก จำนวนโพสที่เป็นตัวเลข 1254 ให้เป็น 1,254

มันจะอยู่ที่ DISCUZ_ROOT\include\cache.func.php

ประมาณบรรทัดที่ 940-970 ครับ

จะเป็นข้อความแบบนี้$customauthorinfo = array();
                        if(is_array($data['customauthorinfo'])) {
                              foreach($data['customauthorinfo'] as $key => $value) {
                                        if(array_key_exists($key, $authorinfoitems)) {
                                                if(substr($key, 0, 10) == 'extcredits') {
                                                      $v = addcslashes('<dt>'.$authorinfoitems[$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                } elseif(substr($key, 0, 6) == 'field_') {
                                                      $v = addcslashes('<dt>'.$authorinfoitems[$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                } elseif($key == 'gender') {
                                                      $v = '".('.$authorinfoitems['gender'].' == 1 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_male'].' </dd>', '"').'" : ('.$authorinfoitems['gender'].' == 2 ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$language['authorinfoitems_gender_female'].' </dd>', '"').'" : ""))."';
                                                } elseif($key == 'location') {
                                                      $v = '".('.$authorinfoitems[$key].' ? "'.addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"').'" : "")."';
                                                } else {
                                                      $v = addcslashes('<dt>'.$language['authorinfoitems_'.$key].'</dt><dd>'.$authorinfoitems[$key].' </dd>', '"');
                                                }มันจะอยู่ในรูปแบบของ Tag <dd>
เช่น<dd>'.$authorinfoitems[$key].' </dd>ยังไง ท่านทั้งหลายที่เก่งๆ การโมไฟล์ php ก็ขอรบกวนช่วยโมให้หน่อยนะครับ

ขอบคุณนะครับ สำหรับการเข้ามาอ่าน และหากตอบจะขอบคุณมากๆ เลย

ขอให้เจริญในหน้าที่การงานนะครับ สาธุให้เลยครับผม

deknakhon โพสต์ 2009-8-28 12:27:09

ผมมี Fuc แปลงวันที่ สากลเป็นไทย แต่ไม่รู้ว่า จะเอาไปใช้ กับ Discuzยัง ลองเอาไปใช้กันดูนะครับ
ได้แล้งยังไงช่วย บอกต่อเพื่อนๆๆ ด้วยขอบคุณครับ
ที่มาข้อมูลhttp://forum.boonsit.com/index.php/topic,516.0.html

<?
function Newdate($convD) {
$GGyear=substr($convD ,0,4)+543;   //
$GGmonth=substr($convD,5,2);
$GGdate=substr($convD,8,2);
$Buffdate=$GGyear."/".$GGmonth."/".$GGdate;
return $Buffdate;
}

echo $new_date=Newdate("2009-08-20");

?>

deknakhon โพสต์ 2009-8-29 14:41:44

ผมอยากทดลองเขียนให้แต่เมนูที่เว็บบอร์ดผมมัน ไม่มีข้อมูลแบบที่คุณต้อ
การ แสดงออกมา ผมต้องไป Configที่เมนูไหนครับ

jaideejung007 โพสต์ 2009-8-29 15:16:34

เอ๋ ตามที่บอกเลยไงครับ

แล้วที่ว่าไม่มีข้อมูลแสดงออกมา

ยังไง หรือครับผม

ลองอธิบาย ให้ผมเข้าใจิดนึงครับ

แฮะๆๆๆ

deknakhon โพสต์ 2009-8-29 16:11:24

UID7422
โพสแล้ว770
หัวข้อสำคัญ0
เครดิต554
จิตพิศัย554
Money549
Gold484
เพศชาย
ที่อยู่อุบลฯ - กรุงเทพฯ
... ออนไลน์137 ชัวโมง
เข้าระบบล่าสุด2009-8-29


ข้อมูลที่เว็บบอร์ดที่ผมติดตั้งไม่มีนะครับ

jaideejung007 โพสต์ 2009-8-31 13:03:03

อ้าว ไงแบบนั้นล่ะน้อ

เอ ก็ตามที่ผมบอกด้านบน เว็บของพี่ไม่มีหลอครับ

ว้า

อ้อ ถ้าไม่ได้ก็ไม่เป็นไรครับ

ผมทำใจแล้วล่ะครับ แฮะๆๆๆ

ขอบคุณสำหรับ ความพยายามนะครับผม

ขอบคุณมากมาย

โจ้ครับ

donot โพสต์ 2013-5-27 15:40:19

deknakhon ตอบกลับเมื่อ 2009-8-26 07:48 static/image/common/back.gif
ถ้ารู้ว่า ส่วนในเป็นการนำตัวเลขมาแสดงสามารถเขียนเพ ...

ผมใช้ Discuz X3 ครับ แก้ไขไฟล์ไหนหรอครับ
หน้า: [1]
ดูในรูปแบบกติ: มีสคริปต์ใส่ Commas ให้กับตัวเลขแล้ว แต่โมไม่เป็นช่วยด้วยครับ