code to import excel data into database in php

PHP programming forum. Ask questions or help people concerning PHP code. Don't understand a function? Need help implementing a class? Don't understand a class? Here is where to ask. Remember to do your homework!

Moderator: General Moderators

Post Reply
padma525
Forum Newbie
Posts: 3
Joined: Tue Apr 08, 2008 7:34 am

code to import excel data into database in php

Post by padma525 »

hi

i want to import the excel data into a database. pls give me the php code to do that.

thanks
:|
User avatar
Christopher
Site Administrator
Posts: 13596
Joined: Wed Aug 25, 2004 7:54 pm
Location: New York, NY, US

Re: code to import excel data into database in php

Post by Christopher »

Export the data from Excel as a delimited text file like CSV. Then use LOAD DATA INFILE to import the data.
(#10850)
User avatar
starram
Forum Commoner
Posts: 58
Joined: Thu Apr 10, 2008 1:27 am
Location: India
Contact:

Re: code to import excel data into database in php

Post by starram »

<?php

include("include/connection.php");


$file_name_arr=explode(".",$_FILES['file']['name']);
$ext=$file_name_arr[(count($file_name_arr)-1)];
if($ext=="csv")
{
$filename=$_FILES['file']['tmp_name'];
$handle = fopen("$filename", "r");
$query="insert into tablename (fields) values ";
//$handle = fopen($file_source, "r");
$query_values = "";
$ctr=1;
$row = 1;
while(($data = fgetcsv($handle, 4096, ",")) !== FALSE)
{
$num = count($data);
//if($row!=0 && $data[0]!="" && $data[1]!="")
if($row!=0 && ($data[0]!="" || $data[1]!="" || $data[2]!=""))
## Check for if we want to allow data read from which line
## Check for name and phone should not be blank
{
if($ctr <= 999)
{
$query_values .= "(";
for($var=0;$var<30;$var++)//change 30 to total number of fields.
{
if(isset($data[$var]))
{
$query_values .= "'".addslashes($data[$var])."',";
}
else
{
$query_values .= "'',";
}
}
$query_values = trim($query_values,",")."),";
}
else
{
$query_values .= "(";
for($var=0;$var<30;$var++)//change 30 to total number of fields.
{
if(isset($data[$var]))
{
$query_values .= "'".addslashes($data[$var])."',";
}
else
{
$query_values .= "'',";
}
}
$query_values = trim($query_values,",")."),";
}
$finalquery=$query.$query_values;
if ($ctr==1000)
{
$ctr=0;
$finalquery=$query.$query_values;
$finalquery=trim($finalquery, ",");
$result=mysql_query($finalquery);
$query_values="";
}

$ctr++;
}
$row++;
}
$finalquery=$query.$query_values;
$finalquery=trim($finalquery, ",");
$result=mysql_query($finalquery);
$query_values="";

}

?>
Post Reply