请教PHP导入Excel到MySQL的问题
本帖最后由 ShunYea 于 2013-02-03 16:23:05 编辑 看了网上类似的例子,好像都是一个改过来的。
我的代码:
<br /><?php<br />require_once 'reader.php';<br /><br />$data = new Spreadsheet_Excel_Reader();<br /> <br />$data->setOutputEncoding('gbk');<br /><br />$data->read('in.xls');<br />@ $db = mysql_connect('localhost', 'root', '123456') or<br />die("Could not connect to database.");<br />mysql_query("set names 'gbk'");<br />mysql_select_db('test1'); <br />error_reporting(E_ALL ^ E_NOTICE);<br /><br /><br />for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {<br /> <br /><br /> $a = $data->sheets[0]['cells'][$i][1];//取得第一列的数据<br /> $b = $data->sheets[0]['cells'][$i][2];//取得第二列的数据<br /> $c = $data->sheets[0]['cells'][$i][3];//取得第三列的数据<br /> $d = $data->sheets[0]['cells'][$i][4];//取得第四列的数据<br /> $e = $data->sheets[0]['cells'][$i][5];//取得第五列的数据<br /> $f = $data->sheets[0]['cells'][$i][6];//取得第六列的数据<br /> $g = $data->sheets[0]['cells'][$i][7];//取得第七列的数据<br /><br /> <br /> $sql = "INSERT INTO appexp (account,appinfo,price,result,income,pay,date) VALUES('$a','$b','$c','$d','$e','$f','$g')";<br /> echo $sql.'<br />';<br /> $res = mysql_query($sql) or die ("错误:$sql");<br />} <br /> ?> <br />
Salin selepas log masuk
我将http://sourceforge.net/projects/phpexcelreader下载到网站空间,将Excel目录里的文件传到一个目录下,然后上述代码为in.php,同在这个Excel目录下。表格也传上去了,访问in.php 这个页面,空白一片,请教是什么问题?
谢谢解答。
------解决方案--------------------我这里是正常的,我贴下我的代码你参考下(我的是web端自己上传excel文件):
<br><?php <br /><br>require_once 'Excel/reader.php';<br><br>$data = new Spreadsheet_Excel_Reader();<br><br>if($_FILES){<br><br> $check = substr($_FILES["file"]["name"],strrpos($_FILES["file"]["name"],".")+1); <br><br> if ( $check == "xls" <br><font color="#FF8000">------解决方案--------------------</font><br> $check == "xlsx")<br> {<br> move_uploaded_file($_FILES["file"]["tmp_name"],"upload/" . $_FILES["file"]["name"]);<br> }<br> else<br> {<br> exit('no');<br> }<br><br>$data->setOutputEncoding('UTF-8');<br><br>$data->read("upload/" . $_FILES["file"]["name"]);<br><br>error_reporting(E_ALL ^ E_NOTICE);<br><br>$db_host = 'localhost'; //edit_config<br>$db_user = 'root';<br>$db_password = 'root';<br>$db_port = 3306;<br>$db_name = 'test';<br><br>$con = mysql_connect($db_host,$db_user,$db_password);<br>if (!$con)<br> {<br> die('Could not connect: ' . mysql_error());<br> }<br><br>$db_selected = mysql_select_db($db_name, $con);<br><br>if (!$db_selected)<br> {<br> die ("Can\'t use test_db : " . mysql_error());<br> }<br><br>//删除已存在表<br><div class="clear">
</div>
Salin selepas log masuk