การเขียนโปรแกรมภาษา 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