 |
[PHP]
ถ้าจะ Import File CSV เข้าฐานข้อมูลแต่หลาย Table จะเขียนโค้ดเพิ่มยังไงครับขอตัวอย่างหน่อยครับ |
|
 |
|
|
 |
 |
|
คือผมมีไฟล์ CSV ที่ Export ออกมาจากโปรแกรมอื่นครับ ผมต้องการจะให้ข้อมูลเข้าตามฐานข้อมูลที่มีครับ TB_A,TB_B,TB_C รบกวนขอตัวอย่างหน่อยครับเพื่อเป็นแนวทาง
ตัวอย่างไฟล์ครับ

โค้ดนี้ Import File เข้าฐานข้อมูลแค่ TB_A อันเดียวครับ
Code
01. <?php
02. move_uploaded_file( $_FILES [ "fileCSV" ][ "tmp_name" ], $_FILES [ "fileCSV" ][ "name" ]);
03.
04. $objConnect = mysql_connect( "localhost" , "root" , "1234" ) or die ( "Error Connect to Database" );
05. $objDB = mysql_select_db( "production_total" );
06.
07. $objCSV = fopen ( $_FILES [ "fileCSV" ][ "name" ], "r" );
08. while (( $objArr = fgetcsv ( $objCSV , 1000, "," )) !== FALSE) {
09. $strSQL = "INSERT INTO tb_A " ;
10. $strSQL .= "(id,Date,Sales,Payout,percent,Save) " ;
11. $strSQL .= "VALUES " ;
12. $strSQL .= "('" . $objArr [0]. "','" . $objArr [1]. "','" . $objArr [2]. "' " ;
13. $strSQL .= ",'" . $objArr [3]. "','" . $objArr [4]. "','" . $objArr [5]. "' " ;
14. $objQuery = mysql_query( $strSQL );
15. }
16. fclose( $objCSV );
17.
18. echo "Upload & Import Done." ;
19.
20. ?>
21. </table>
Tag : PHP, MySQL
|
|
 |
 |
 |
 |
Date :
2017-09-26 17:13:01 |
By :
Lun2560 |
View :
2459 |
Reply :
9 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แค่ตัวอย่างก็ไม่สัมพันธ์กันแล้ว ตาราง a เห็นแค่ 4 คอลัมน์
ทำไมถึง insert 6 คอลัมน์ ได้ 0-5
เอาเป็นว่า 6 คอลัมน์ก็แล้วกัน
Code (PHP)
01. $strSQL_A = "INSERT INTO tb_A (id,Date,Sales,Payout,percent,Save) VALUES " ;
02. $strSQL_B = "INSERT INTO tb_B (id,Date,Sales,Payout,percent,Save) VALUES " ;
03. $first_rec = true;
04. while (( $ar = fgetcsv ( $objCSV , 1000, "," )) !== FALSE) {
05. $strSQL_A .=( $first_rec ? '' , ',' ). "('" . $ar [0]. "','" . $ar [1]. "','" . $ar [2]. "','" . $ar [3]. "','" . $ar [4] . "','" . $ar [5] . "' " ;
06. $strSQL_B .=( $first_rec ? '' , ',' ). "('" . $ar [6]. "','" . $ar [7]. "','" . $ar [8]. "','" . $ar [9]. "','" . $ar [10]. "','" . $ar [11]. "' " ;
07. $first_rec =false;
08. }
09. $objQuery = mysql_query( $strSQL_A );
10. $objQuery = mysql_query( $strSQL_B );
|
ประวัติการแก้ไข 2017-09-27 09:34:03
 |
 |
 |
 |
Date :
2017-09-26 20:12:40 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
หมายถีง csv ที่แสดงผล คอลัมน์ มันอ้างอิง field ไหน ดูให้ถูกนะครับ
ผมแก้โค๊ดที่คห 2 นิดหน่อย ลองประยุกต์ ดูครับ
|
 |
 |
 |
 |
Date :
2017-09-27 09:35:58 |
By :
Chaidhanan |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
พี่ Chaidhanan หรือพี่คนไหนที่มีเวลา ผมรบกวนหน่อยครับ คือผมมีไฟล์ที่เป็น .CSV แบบนี้ละครับจะเพิ่มยังไงครับ
ในดาต้าเบจผมจะให้เก็บ
Tabledata
AAA
BBB
CCC
DDD ไปถึง VVV แบบนี้ได้ไหมครับ
อันนี้ไฟล์ที่ที่เป็น .CSV ครับ

|
 |
 |
 |
 |
Date :
2017-09-29 15:11:58 |
By :
เด็กก่อสร้าง |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ฐานข้อมูลเก็บแบบนี้ครับไม่รู้ถูกไหม คือจุดประสงค์คือต้องการ Import File เข้าดาต้าเบจแล้วดึงข้อมูลยอดรวมแต่ละวันออกมาโชว์เฉยๆครับ

|
 |
 |
 |
 |
Date :
2017-09-29 15:38:03 |
By :
เด็กก่อสร้าง |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
พอดีติดตรงนี้เหมือนกันค่ะพี่รบกวนขอโค้ดตัวอย่างแบบใช้งานจริงได้ไหมคะ ขอบคุณค่ะ
|
 |
 |
 |
 |
Date :
2017-10-02 08:46:25 |
By :
แอม |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
ตอบความคิดเห็นที่ : 7 เขียนโดย : แอม เมื่อวันที่ 2017-10-02 08:46:25
รายละเอียดของการตอบ ::
ลองเอาโค้ดนี้ไปใช้ดูครับผมลองแล้วได้
Code
<html>
<head>
<title>Test PHP & CSV To MySQL</title>
<!--<meta http-equiv=Content-Type content="text/html; charset=tis-620"> -->
</head>
<body>
<?php
move_uploaded_file($_FILES["fileCSV"]["tmp_name"],$_FILES["fileCSV"]["name"]); // Copy/Upload CSV
$objConnect = mysql_connect("localhost","root","") or die("Error Connect to Database"); // Conect to MySQL
$objDB = mysql_select_db("test");
mysql_query("SET NAMES TIS620");
$objCSV = fopen($_FILES["fileCSV"]["name"], "r");
while (($objArr = fgetcsv($objCSV, 1000, ",")) !== FALSE) {
$strSQL = "INSERT INTO test_a ";
$strSQL .="(AAA,BBB,CCC,DDD,EEE,FFF,GGG,HHH,III,JJJ,KKK,LLL,MMM,NNN,OOO,PPP,QQQ,RRR,SSS,TTT,UUU,VVV) ";
$strSQL .="VALUES ";
$strSQL .="('".$objArr[0]."','".$objArr[1]."','".$objArr[2]."' ";
$strSQL .=",'".$objArr[3]."','".$objArr[4]."','".$objArr[5]."' ";
$strSQL .=",'".$objArr[6]."','".$objArr[7]."','".$objArr[8]."' ";
$strSQL .=",'".$objArr[9]."','".$objArr[10]."','".$objArr[11]."' ";
$strSQL .=",'".$objArr[12]."','".$objArr[13]."','".$objArr[14]."' ";
$strSQL .=",'".$objArr[15]."','".$objArr[16]."','".$objArr[17]."' ";
$strSQL .=",'".$objArr[18]."','".$objArr[19]."','".$objArr[20]."','".$objArr[21]."') ";
$objQuery = mysql_query($strSQL);
}
fclose($objCSV);
echo "อัพโหลดไฟล์เข้าฐานข้อมูลสำเร็จ !!!";
?>
</table>
</body>
</html>
|
 |
 |
 |
 |
Date :
2017-10-05 10:23:39 |
By :
Lun2560 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|