Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
Moderators: mindphp, ผู้ดูแลกระดาน
-
- PHP Sr. Member
- Posts: 54
- Joined: 04/01/2009 7:54 pm
Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
- - ถามอีกแล้ว อย่าพึ่งเบื่อกันน้อ
การ import แบบที่พอกด browse ไฟล์เสร็จ ก็กด OK
แล้วก็จะ Import ข้อมูลจากไฟล์ดังกล่าวเข้าฐานข้อมูล ทำยังไงหรอครับ
ป.ล.
แล้วหาก คีย์หลักซ้ำ จะมีผลอย่างไรครับ
การ import แบบที่พอกด browse ไฟล์เสร็จ ก็กด OK
แล้วก็จะ Import ข้อมูลจากไฟล์ดังกล่าวเข้าฐานข้อมูล ทำยังไงหรอครับ
ป.ล.
แล้วหาก คีย์หลักซ้ำ จะมีผลอย่างไรครับ
- mindphp
- ผู้ดูแลระบบ MindPHP
- Posts: 27595
- Joined: 22/09/2008 6:18 pm
- Contact:
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
PK ซ้ำก็ insert แถวนั้นๆ ลงไปไม่ได้ครับ
แต่ก็มีวิธีเช็คว่า row ไหน insert ลงไปไม่ได้
ถ้า ใช้ InoDB ก็ทำ traction ได้ ว่าจะเอา หรือไม่เอาทั้งหมด ก็ได้
วิธี คือ อ่านไฟล์ .csv ออกมา ทีละบันทัด แล้ว แยกข้อความออกมาด้วย เครื่องหมาย ","
แล้วเอาค่าที่แยกได้ สร้างเป็นคำสั่ง sql ที่ใช้ในการ insert
แล้ว รันคำสั่ง sql ที่ได้มานั้น
ถามได้ครับไม่เบื่อครับ ตอบบ้าง ถามบ้าง ดีครับช่วยๆกันไป
แต่ก็มีวิธีเช็คว่า row ไหน insert ลงไปไม่ได้
ถ้า ใช้ InoDB ก็ทำ traction ได้ ว่าจะเอา หรือไม่เอาทั้งหมด ก็ได้
วิธี คือ อ่านไฟล์ .csv ออกมา ทีละบันทัด แล้ว แยกข้อความออกมาด้วย เครื่องหมาย ","
แล้วเอาค่าที่แยกได้ สร้างเป็นคำสั่ง sql ที่ใช้ในการ insert
แล้ว รันคำสั่ง sql ที่ได้มานั้น

ถามได้ครับไม่เบื่อครับ ตอบบ้าง ถามบ้าง ดีครับช่วยๆกันไป

ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- PHP Sr. Member
- Posts: 54
- Joined: 04/01/2009 7:54 pm
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
แล้วการ Browse เนี่ย ทำไงหรอครับ
แบบกดเลือกไฟล์อะครับ
เหมือนเวลาเรา Import เข้า MYSQL อะครับ ที่กด Browse ไฟล์แล้วกด GO
แบบกดเลือกไฟล์อะครับ
เหมือนเวลาเรา Import เข้า MYSQL อะครับ ที่กด Browse ไฟล์แล้วกด GO
- mindphp
- ผู้ดูแลระบบ MindPHP
- Posts: 27595
- Joined: 22/09/2008 6:18 pm
- Contact:
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
ทำให้ Browse ไฟล์ คือเราต้องทำ form ใส่ file field ลงไป
เหมือน ทำ upload ไฟล์ ปกติครับ
แต่พออัพโหลด แล้วให้ทำตาม คำแนะนำข้างบน
เหมือน ทำ upload ไฟล์ ปกติครับ
แต่พออัพโหลด แล้วให้ทำตาม คำแนะนำข้างบน
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- PHP Sr. Member
- Posts: 54
- Joined: 04/01/2009 7:54 pm
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
ถามเพิ่มครับ
ถ้าการ Import โดยไม่ใช้คำสั่ง getcsv มีคำสั่งไหนเอามาใช้ได้ครับ
พอดีผมยังแยกแบบที่คุณว่าไม่เป็นอะ
เพราะคำสั่ง getcsv มันรับภาษาไทยที่เป็น utf 8 ไม่ได้ มีคำสั่งอื่นไมครับ ? หรือวิธีอื่น ?
ถ้าการ Import โดยไม่ใช้คำสั่ง getcsv มีคำสั่งไหนเอามาใช้ได้ครับ
พอดีผมยังแยกแบบที่คุณว่าไม่เป็นอะ
เพราะคำสั่ง getcsv มันรับภาษาไทยที่เป็น utf 8 ไม่ได้ มีคำสั่งอื่นไมครับ ? หรือวิธีอื่น ?
- mindphp
- ผู้ดูแลระบบ MindPHP
- Posts: 27595
- Joined: 22/09/2008 6:18 pm
- Contact:
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
มองมันเป็น text file ธรรมดา ครับ
แล้วใช้ function explode() แยกแต่ละ field ของแต่ละบรรทัดเอาครับ
แล้วใช้ function explode() แยกแต่ละ field ของแต่ละบรรทัดเอาครับ
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- PHP Sr. Member
- Posts: 54
- Joined: 04/01/2009 7:54 pm
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
Code: Select all
$host = 'localhost'; //sql208.thport.com
$user = 'root'; //'197030'; //thpor_2957156
$pass = 'ekachai';
$dbname = 'his'; //'197030'; // thpor_2957156_his
$conn = mysql_connect("$host","$user","$pass");
mysql_select_db("$dbname",$conn);
mysql_query("SET NAMES UTF8",$conn);
if ($Uploaded_File != "") // ตรวจสอบว่ามีไฟล์ส่งมาหรือไม่
{
if(strchr($Uploaded_File_name,".")==".csv") //เช็คนามสกุล
{
copy($Uploaded_File,"file/".$Uploaded_File_name); // Copy File ไว้ที่ Folder File
$FILE = fopen( "file/".$Uploaded_File_name, "r");
$i=1;
while (!feof($FILE))
{
$READ = fgets($FILE,2048);
$DATA = explode(',',$READ);
if ($i>1) //ไม่อ่านแถวแรกสุด เพราะแถวแรกสุดคือ หัวฟิลล์
{
echo $DATA[0]." "; //ส่วนนี้ผมไว้ดูเฉยๆ ว่ามีแถวอะไรบ้าง
echo $DATA[1]." ";
echo $DATA[2]."<br>";
mysql_query("INSERT INTO icd_10 (ICD,Detail_En,Detail_Th) VALUES ($DATA[0],$DATA[1],$DATA[2])");
}
$i=$i+1;
}
}
else
{
echo "file is not .csv";
}
}
ปัญหาที่เจอคือเวลาเอาไฟล์ที่ export มาแก้ด้วย excel แล้วใส่ไปใหม่พบว่า ภาษาไทยใช้ไม่ได้
แล้วก็เพี้ยนค่าครับ
แต่หากแค่เป็นการ BACKUP ละก็ไม่มีปัญหา สามารถใช้ได้ปรกติ แต่ หากเป็นการเพิ่มเติมเข้าไป โดยมีการซ้ำ มันจะหยุดทำการเพิ่มทันทีนะสิครับ
อยากรู้เพิ่มเติมหน่อยครับ ว่ามีคำสั่งไรมาแก้ไขพวกนี้ได้บ้าง
- mindphp
- ผู้ดูแลระบบ MindPHP
- Posts: 27595
- Joined: 22/09/2008 6:18 pm
- Contact:
Re: Import CSV โดยการ Browse ไฟล์ทำยังไงครับ
ลองเช็คคำสั่ง sql นี้ครับ
INSERT INTO icd_10 (ICD,Detail_En,Detail_Th) VALUES ($DATA[0],$DATA[1],$DATA[2])
ตรง Values ถ้าค่าเป็น text ต้องอยู่ใน เครื่อง หมาย 'yyyyy'
ส่วนเรื่อง ถ้า PK ซ้ำกันจะ insert แต่ละครั้งไม่ได้ ไม่ได้ทำให้ ออกจาก loop
INSERT INTO icd_10 (ICD,Detail_En,Detail_Th) VALUES ($DATA[0],$DATA[1],$DATA[2])
ตรง Values ถ้าค่าเป็น text ต้องอยู่ใน เครื่อง หมาย 'yyyyy'
ส่วนเรื่อง ถ้า PK ซ้ำกันจะ insert แต่ละครั้งไม่ได้ ไม่ได้ทำให้ ออกจาก loop
ติดตาม VDO: http://www.youtube.com/c/MindphpVideoman
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
ติดตาม FB: https://www.facebook.com/pages/MindphpC ... 9517401606
หมวดแชร์ความรู้: https://www.mindphp.com/forums/viewforum.php?f=29
รับอบรม และพัฒนาระบบ: https://www.mindphp.com/forums/viewtopic.php?f=6&t=2042
-
- Similar Topics
- Replies
- Views
- Last post
-
-
วิธี นำภาพมาใส่ใน Google Doc โดยการ Search จากเว็บไซต์
by watcharin » 08/05/2018 3:42 pm » in Google For Work Knowledge - 0 Replies
- 462 Views
-
Last post by watcharin
08/05/2018 3:42 pm
-
-
- 0 Replies
- 722 Views
-
Last post by Ittichai_chupol
31/01/2020 6:02 pm
-
- 1 Replies
- 298 Views
-
Last post by thatsawan
23/05/2016 6:40 pm
Who is online
Users browsing this forum: Google Adsense [Bot] and 12 guests