我需要使用codeigniter将excel表数据插入我的数据库。为此我尝试了
<?php
include 'reader.php';
$excel = new Spreadsheet_Excel_Reader();
?>
<table>
<?php
$excel->read('first_data.xls');
$x=1;
while($x<=$excel->sheets[0]['numRows']) {
echo "\t<tr>\n";
$y=1;
while($y<=$excel->sheets[0]['numCols']) {
$cell = isset($excel->sheets[0]['cells'][$x][$y]) ? $excel->sheets[0]['cells'][$x][$y] : '';
echo "\t\t<td>$cell</td>\n";
$y++;
}
echo "\t</tr>\n";
$x++;
}
?>
</table><br/>
通过这个我可以检索excel数据并打印它。 如何将数据库逐个存储为行。
State 1972-1973 1973-1974 1974-1975 1975-1976 1976-1977 1977-1978 1978-1979 1979-1980 1980-1981 1981-1982
Alabama $733,750 $1,066,300 $1,136,244 $1,343,670 $1,476,307 $1,642,927 $1,507,315 $1,849,825 $2,402,873 $2,079,000
Alaska $1,019,000 $1,100,000 $1,180,500 $1,172,300 $1,415,300 $1,411,700 $1,666,500 $2,026,400 $3,409,800 $7,200,000
Arizona $225,117 $226,000 $242,000 $212,200 $553,600 $905,200 $1,100,300 $1,232,600 $1,409,600 $1,557,000
Arkansas $890,496 $1,173,304 $1,193,362 $1,735,266 $1,824,536 $1,929,071 $2,090,590 $2,173,595 $2,042,632 $2,203,864
答案 0 :(得分:0)
这个建议可能有点超出了问题的范围,但你能考虑将excel文件导出到.csv然后使用mysql导入导入文件吗?
希望这段代码可以帮助你。
if ( file_exists( $file ) )
{
$fields = $this->db->list_fields($table_name);
$field_list = implode('`,`',$fields);
$sql = "LOAD DATA LOCAL INFILE '". $file."'
REPLACE
INTO TABLE `$table_name`
FIELDS terminated BY ','
OPTIONALLY ENCLOSED BY '\"'
LINES terminated BY '\\n' IGNORE 1 LINES
(`${field_list}`); ";
$this->db->query($sql);
}