Untitled Document
การส่งออก MicroSoft Excel เข้า Mysql
การส่งออก MicroSoft Excel จะส่งออกในรูปแบบของไฟล์ csv และสามารถเปิดด้วย
โปรแกรม Microsoft Excel นั้น
1.)เริ่มแรกให้สร้าง ฐานข้อมูลชื่อ mydatabase
รายละเอียดของตาราง
// สร้างตาราง ชื่อ testing
CREATE TABLE `testing` (
`num` INT( 11 ) NOT NULL AUTO_INCREMENT ,
`xx` VARCHAR( 50 ) NOT NULL ,
`yy` VARCHAR( 50 ) NOT NULL ,
`zz` VARCHAR( 50 ) NOT NULL ,
PRIMARY KEY ( `num` ) );
เตรียมไฟล์ .CSV
ไปที่ไฟล์ เลือก บันทึกเป็น
เลือก .CSV (Comma delimited) ตั้งชื่อไฟล์ว่า testcsv
สร้างไฟล์ exceltosql.php
<?
$FILE = fopen( "testcsv.csv", "r");//ชื่อไฟล์ และ โหมด r เพื่ออ่านข้อมูลจากไฟล์อย่างเดียว
$data = fgetcsv( $FILE , 1024 );//จะเก็บข้อความไว้ใน Array data แบ่งตามคอลัมน์
$i=1;
do
{
if ($i == 1){
//เพื่อไม่ให้อ่านหัวแถว ลงฐานข้อมูล
$data = fgetcsv( $FILE , 1024 );
$i++;
}
else{
//เริ่มติดต่อฐานข้อมูล
$host="localhost";
$user="root";
$password="";
$dbname="datatest";
$conetion=mysql_connect($host,$user,$password) or die("ไม่สามารถติดต่อฐ้านข้อมูลได้");
$db=mysql_select_db($dbname) or die("ไม่สามารถเลือกฐานข้อมูลได้");
$sql="INSERT INTO testing (num,xx ,yy , zz ) VALUES ('$data[0]', '$data[1]', '$data[2]', '$data[3]');";
$dbquery=mysql_db_query($dbname,$sql);
mysql_close();
$data = fgetcsv( $FILE , 1024 );
$i++;
}}while ( !feof( $FILE ) );
?>
เมื่อรันไฟล์ exceltosql.php จะได้ผลดังนี้
* หมายเหตุ ไฟล์ exceltosql.php และ testcsv.csv อยู่ในโฟรเดอร์เดียวกัน *
|