Register Register Member Login Member Login Member Login Forgot Password ??
PHP , ASP , ASP.NET, VB.NET, C#, Java , jQuery , Android , iOS , Windows Phone
 

Registered : 109,037

HOME > PHP > PHP Forum > ขอความรู้เกี่ยวการเปลี่ยนตัวเลขไทยเป็นตัวเลขอารบิคใน field ของตารางหน่อยนะครับ พอดีมีงานสำคัญด่วนมาก



 

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

 



Topic : 030983

Guest




คือผมมีข้อมูลที่เป็น Text เก็บอยู่ใน Field ของ MySQL ซึ่งข้อความที่เก็บหลายหมื่น Record แต่ดันเป็นตัวเลขไทยปนกับข้อความอยู่ใน field เดียวกัน (ตัวอย่าง นายรักชาติ ยิ่งชีพ หมายเลขประชาชน ๙-๙๙๙๙-๙๙๙๙๙-๙๙-๙ อยู่บ้านเลขที่ ๙๙ ม.๙ ฯลฯ) ผมต้องการเปลี่ยนเฉพาะตัวเลขไทยที่ปนอยู่กับข้อความทุก Record ในตาราง เพราะมันเจอปัญหาเมื่อผมเขียนโค้ดทำการสืบค้น เนื่องจากระบบสืบค้นใช้รูปแบบของตัวเลขอารบิคเท่านั้น ตอนนี้มึนแล้ว หามาหลายวิธีแล้ว ตอนนี้ผมใช้ MySQL-Front สั่ง Replace ทีละ Record เพราะมันยอมให้แทนที่ทีละ Record รบกวนผู้รู้ทั้งหลายช่วยแนะนำเป็นวิทยาทานหน่อยละกันนะครับ ขอบพระคุณล่วงหน้าครับ



Tag : - - - -







Move To Hilight (Stock) 
Send To Friend.Bookmark.
Date : 2009-08-30 02:13:26 By : ต.เต่า.php View : 4234 Reply : 9
 

 

No. 1



โพสกระทู้ ( 373 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

ดึงข้อมูลในฐานข้อมูลมา แล้วทำตามนี้นะครับ
Code (PHP)
<?php
$text="ฟหกด๑๒๓๔๕๖๗๘๙จ๊ะจ๋า";
$text=str_replace("๑","1",$text);
$text=str_replace("๒","2",$text);
$text=str_replace("๓","3",$text);
$text=str_replace("๔","4",$text);
$text=str_replace("๕","5",$text);
$text=str_replace("๖","6",$text);
$text=str_replace("๗","7",$text);
$text=str_replace("๘","8",$text);
$text=str_replace("๙","9",$text);
$text=str_replace("๐","๐",$text);
@mysql_query("UPDATE table SET FIELD='$text' WHERE PRIMARY_KEY = '$id'");
?>

น่าจะประมาณนี้นะครับ select ข้อมูลมาทั้งหมดเลย เดี๋ยวมันวนรอบให้เอง






Date : 2009-08-30 04:21:26 By : monotakari
 


 

No. 2

Guest


รบกวนพี่ช่วยดูอีกนิดนะครับ ผมลองทำแบบที่พี่แนะนำมาหลายรอบแล้ว แต่ดูเหมือนผมจะไม่เข้าใจการประยุกต์ใช้นะครับ ล่าสุดผมใช้โค้ดด้านล่างนี้ ปรากฏว่ามันสามารถเปลี่ยนเลขไทยเป็นเลขอารบิคได้ถูกต้อง (ในทุก field) แต่ปัญหาคือ ข้อความที่อยู่ใน field ทั้งตาราง มันถูกเปลี่ยนข้อมูลที่อยู่ในทุก field เป็นข้อมูลที่ถูกแทนที่ตัวเลขใน field แรก คงเป็นเพราะผมไม่เข้าใจการประยุกต์ใช้มากว่านะครับ (ยังดีที่ได้ Backup Database ไว้ก่อน) รบกวนช่วยดูโค้ดด้านล่างให้หน่อยนะครับว่าผมพลาดตรงไหน ขอบคุณล่วงหน้าครับ

Code
<?php
include("../../include/host.inc.php");
  $sql_search="SELECT news_id, content    FROM table  ORDER BY news_id ASC ";
  $result = mysql_query($sql_search,$link ) or die("คำสั่ง SQL ไม่สามารถทำงานได้ ");
  $numrows=mysql_num_rows($result);
     if ($numrows!=0) {	#ถ้าพบข้อมูลจากการสืบค้น
        $row = mysql_fetch_array($result);	
        $news_id=$row['news_id'];
        $content_replace=$row['content'];
        //โค้ดด้านล่างนี้งงนิดหน่อยว่าจะประยุกต์ใช้อย่างไร
       $text=$content_replace;
       $text=str_replace("๑","1",$text);
       $text=str_replace("๒","2",$text);
       $text=str_replace("๓","3",$text);
       $text=str_replace("๔","4",$text);
       $text=str_replace("๕","5",$text);
       $text=str_replace("๖","6",$text);
       $text=str_replace("๗","7",$text);
       $text=str_replace("๘","8",$text);
       $text=str_replace("๙","9",$text);
       $text=str_replace("๐","0",$text);
       @mysql_query("UPDATE information_copy SET content='$text' ");
?>

Date : 2009-08-30 11:29:45 By : ต.เต่า.php
 

 

No. 3

Guest


(ขอโทษครับ พอดีโพสต์ข้อความก่อนหน้าแล้วพบโค้ดผิดพลาด UPDATE information_copy SET content='$text' )
ตามนี้นะครับ
New Code
include("../../include/host.inc.php");
  $sql_search="SELECT news_id, content    FROM table  ORDER BY news_id ASC ";
  $result = mysql_query($sql_search,$link ) or die("คำสั่ง SQL ไม่สามารถทำงานได้ ");
  $numrows=mysql_num_rows($result);
     if ($numrows!=0) {	#ถ้าพบข้อมูลจากการสืบค้น
        $row = mysql_fetch_array($result);	
        $news_id=$row['news_id'];
        $content_replace=$row['content'];
        //โค้ดด้านล่างนี้งงนิดหน่อยว่าจะประยุกต์ใช้อย่างไร
       $text=$content_replace;
       $text=str_replace("๑","1",$text);
       $text=str_replace("๒","2",$text);
       $text=str_replace("๓","3",$text);
       $text=str_replace("๔","4",$text);
       $text=str_replace("๕","5",$text);
       $text=str_replace("๖","6",$text);
       $text=str_replace("๗","7",$text);
       $text=str_replace("๘","8",$text);
       $text=str_replace("๙","9",$text);
       $text=str_replace("๐","0",$text);
       @mysql_query("UPDATE table SET content='$text' ");


Date : 2009-08-30 11:34:43 By : ต.เต่า.php
 


 

No. 4



โพสกระทู้ ( 373 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

Code (PHP)
<?php
include("../../include/host.inc.php"); 
$sql_search="SELECT news_id, content    FROM table  ORDER BY news_id ASC "; 
$result = mysql_query($sql_search,$link ) or die("คำสั่ง SQL ไม่สามารถทำงานได้ "); 
$numrows=mysql_num_rows($result); 
if ($numrows!=0) { #ถ้าพบข้อมูลจากการสืบค้น 
$row = mysql_fetch_array($result);   
$news_id=$row['news_id']; 
$content_replace=$row['content']; 
$text=$content_replace; 
$text=str_replace("๑","1",$text); 
$text=str_replace("๒","2",$text); 
$text=str_replace("๓","3",$text); 
$text=str_replace("๔","4",$text); 
$text=str_replace("๕","5",$text); 
$text=str_replace("๖","6",$text); 
$text=str_replace("๗","7",$text); 
$text=str_replace("๘","8",$text); 
$text=str_replace("๙","9",$text); 
$text=str_replace("๐","0",$text); 
@mysql_query("UPDATE information_copy SET content='$text' Where news_id='$news_is'"); // ตรงนี้กระมังของเดิมไม่มี where 
?>

ประมาณนี้
Date : 2009-08-30 11:38:39 By : monotakari
 


 

No. 5



โพสกระทู้ ( 373 )
บทความ ( 0 )



สถานะออฟไลน์
Facebook

โอ๊ะ ไม่ใช่ๆๆ



Code (PHP)
<?php
include("../../include/host.inc.php"); 
$sql_search="SELECT * FROM table  ORDER BY news_id ASC "; // สั้นๆอย่างนี้ก็ได้
$result = mysql_query($sql_search,$link ) or die("คำสั่ง SQL ไม่สามารถทำงานได้ "); 
while($row = mysql_fetch_array($result)){   //วนรอบการดึงข้อมูลมานะจ้ะ
$news_id=$row['news_id']; 
$content_replace=$row['content']; 
$text=$content_replace; 
$text=str_replace("๑","1",$text); 
$text=str_replace("๒","2",$text); 
$text=str_replace("๓","3",$text); 
$text=str_replace("๔","4",$text); 
$text=str_replace("๕","5",$text); 
$text=str_replace("๖","6",$text); 
$text=str_replace("๗","7",$text); 
$text=str_replace("๘","8",$text); 
$text=str_replace("๙","9",$text); 
$text=str_replace("๐","0",$text); 
@mysql_query("UPDATE information_copy SET content='$text' Where news_id='$news_is'"); // ตรงนี้กระมังของเดิมไม่มี where 
}
?>

ถ้ายังไม่ได้อีก รอคนอื่นตาตอบนะจ้ะ ง่วงมากๆๆๆ ไปนอนแล่ว
Date : 2009-08-30 11:42:28 By : monotakari
 


 

No. 6

Guest


ขอบคุณ คุณ๛อร่อยจัง๛ มากๆ ครับ เรียบร้อยแล้วครับ เยี่ยมมากๆ ผมต้องขอปรบมือชมผู้มีส่วนร่วมในการสร้างสรรค์เว็บนี้อย่างแรงที่ได้สร้างสิ่งมหัศจรรย์ให้เกิดขึ้นในสังคมแห่งนี้ วิทยาทานความรู้เล็กๆ น้อย ๆ สำหรับผู้ที่ยังไม่รู้ มันคือสิ่งยิ่งใหญ่ โดยเฉพาะสิ่งเล็กๆ น้อย ๆ ที่ก่อให้เกิดประโยชน์ต่อผืนแผ่นดินนี้ ผมกำลังทำสิ่งนี้ครับ ขอให้ดวงวิญญาณบรรพบุรุษคุ้มครองพวกท่านทุก ๆ คน ครับ ขอบคุณครับ
Date : 2009-08-30 23:17:07 By : ต.เต่า.php
 


 

No. 7

Guest


เอาID อะไรออกมา เมือสั่งอัปเดต ต้อง where id=ไอดีที่ query ด้วยนะครับ
ไม่งั้น เพี้ยนหมด

ส่วนวิธีการเปลี่ยน ผมแนะนำให้เขียนเป็นฟังก์ชั่นดีกว่าไม๊ครับ

function shownumber($num) {
$Stringnum= trim($num);
if (!$Stringnum) {
return false();
exit();
}
$words = array("๑" => "1", "๒" => "2", "๓" => "3", "๔" => "4", "๕" => "5","๖"=>"6","๗"=>"7","๘"=>"8","๙"=>"9","๐"=>"0");
return str_replace(array_keys($words), array_values($words), $Stringnum);
}


ลอง echo ออกมาดูก่อนก็ได้ ก่อน อัปเดต

echo shownumber($content_replace); exit();

ลองไปประยุกต์ดูนะครับ

deawx
[email protected]
ปรึกษา PHP ฟรีจ้า
Date : 2009-08-30 23:41:01 By : deawx
 


 

No. 8

Guest


ขอบคุณ deawx ครับ ตอนนี้ทำได้แล้วทั้งสองคำแนะนำเลย ช่วยงานได้เยอะมากๆ ขอบคุณจริง ๆ
Date : 2009-09-02 03:40:27 By : ต.เต่า.php
 


 

No. 9

Guest


ขอบคุณมากๆๆค่ะนำใช้ได้เลยค่ะ
Date : 2010-12-29 08:56:02 By : salt
 

   

ค้นหาข้อมูล


   
 

แสดงความคิดเห็น
Re : ขอความรู้เกี่ยวการเปลี่ยนตัวเลขไทยเป็นตัวเลขอารบิคใน field ของตารางหน่อยนะครับ พอดีมีงานสำคัญด่วนมาก
 
 
รายละเอียด
 
ตัวหนา ตัวเอียง ตัวขีดเส้นใต้ ตัวมีขีดกลาง| ตัวเรืองแสง ตัวมีเงา ตัวอักษรวิ่ง| จัดย่อหน้าอิสระ จัดย่อหน้าชิดซ้าย จัดย่อหน้ากึ่งกลาง จัดย่อหน้าชิดขวา| เส้นขวาง| ขนาดตัวอักษร แบบตัวอักษร
ใส่แฟลช ใส่รูป ใส่ไฮเปอร์ลิ้งค์ ใส่อีเมล์ ใส่ลิ้งค์ FTP| ใส่แถวของตาราง ใส่คอลัมน์ตาราง| ตัวยก ตัวห้อย ตัวพิมพ์ดีด| ใส่โค้ด ใส่การอ้างถึงคำพูด| ใส่ลีสต์
smiley for :lol: smiley for :ken: smiley for :D smiley for :) smiley for ;) smiley for :eek: smiley for :geek: smiley for :roll: smiley for :erm: smiley for :cool: smiley for :blank: smiley for :idea: smiley for :ehh: smiley for :aargh: smiley for :evil:
Insert PHP Code
Insert ASP Code
Insert VB.NET Code Insert C#.NET Code Insert JavaScript Code Insert C#.NET Code
Insert Java Code
Insert Android Code
Insert Objective-C Code
Insert XML Code
Insert SQL Code
Insert Code
เพื่อความเรียบร้อยของข้อความ ควรจัดรูปแบบให้พอดีกับขนาดของหน้าจอ เพื่อง่ายต่อการอ่านและสบายตา และตรวจสอบภาษาไทยให้ถูกต้อง

อัพโหลดแทรกรูปภาพ

Notice

เพื่อความปลอดภัยของเว็บบอร์ด ไม่อนุญาติให้แทรก แท็ก [img]....[/img] โดยการอัพโหลดไฟล์รูปจากที่อื่น เช่นเว็บไซต์ ฟรีอัพโหลดต่าง ๆ
อัพโหลดแทรกรูปภาพ ให้ใช้บริการอัพโหลดไฟล์ของไทยครีเอท และตัดรูปภาพให้พอดีกับสกรีน เพื่อความโหลดเร็วและไฟล์ไม่ถูกลบทิ้ง

   
  เพื่อความปลอดภัยและการตรวจสอบ กระทู้ที่แทรกไฟล์อัพโหลดไฟล์จากที่อื่น อาจจะถูกลบทิ้ง
 
โดย
อีเมล์
บวกค่าให้ถูก
<= ตัวเลขฮินดูอารบิก เช่น 123 (หรือล็อกอินเข้าระบบสมาชิกเพื่อไม่ต้องกรอก)







Exchange: นำเข้าสินค้าจากจีน, Taobao, เฟอร์นิเจอร์, ของพรีเมี่ยม, ร่ม, ปากกา, power bank, แฟลชไดร์ฟ, กระบอกน้ำ

Load balance : Server 00
ThaiCreate.Com Logo
© www.ThaiCreate.Com. 2003-2024 All Rights Reserved.
ไทยครีเอทบริการ จัดทำดูแลแก้ไข Web Application ทุกรูปแบบ (PHP, .Net Application, VB.Net, C#)
[Conditions Privacy Statement] ติดต่อโฆษณา 081-987-6107 อัตราราคา คลิกที่นี่