การเขียนโปรแกรมภาษา PHP เพื่อดึงข้อมูลจากไฟล์ excel ในรูปแบบไฟล์ csv เพื่อมาลงในฐานข้อมูล mysql แบบง่ายๆ มาดูโค้ดกันเลย
header( "content-type: text/html; charset=UTF-8" ); //กำหนดภาษาให้เป็น utf-8 เพื่อไม่ให้เป็นภาษาต่างดาว
$FILE = fopen( "record.csv", "r");  //ชื่อไฟล์ และ โหมด r เพื่ออ่านข้อมูลจากไฟล์อย่างเดียว
$data = fgetcsv( $FILE , 1024 );  //จะเก็บข้อความไว้ใน Array data แบ่งตามคอลัมน์
$i=1;
do {
if ($i == 1){   //เพื่อไม่ให้อ่านหัวแถว ลงฐานข้อมูล
$data = fgetcsv( $FILE , 1024 );
$i++;
} else{   //เริ่มติดต่อฐานข้อมูล
include "connect.php";  //ไฟล์ติดต่อฐานข้อมูล host,user,pass,database_name
$sql="INSERT INTO employee(record_id,employee_id,employee_name) VALUES ('$data[0]', '$data[1]', '$data[2]');";
         $dbquery=mysql_db_query($dbname,$sql);
         mysql_close();
         $data = fgetcsv( $FILE , 1024 );
         $i++;
     }
}while ( !feof( $FILE ) );

copy แล้วลองเอาไปรันดูได้เลยครับ แต่สร้างไฟล์ csv และฐานข้อมูลโดยจำนวนคอลัมม์ในฐานข้อมูลต้องตรงกับจำนวนแถวในไฟล์ excel ด้วยครับ ไม่งั้นมันจะ error ได้เด้ออออ และเปลี่ยนชื่อไฟล์ให้เรียบร้อยก่อนรันครับ ของผมใช้ชื่อไฟล์ว่า record.csv อ่อ แล้วอย่าลืมไฟล์ connect.php เพื่อเชื่อมต่อกับฐานข้อมูลด้วยนะ

บทความโดย : ไฟดับ

Comments