ホームページ  >  記事  >  バックエンド開発  >  EXCEL ファイルを MYSQL にインポートする際のエラー

EXCEL ファイルを MYSQL にインポートする際のエラー

WBOY
WBOYオリジナル
2016-06-23 14:27:171160ブラウズ

この投稿は、2013-11-14 13:36:39 に xuzuning によって最終編集されました

テーブルは非常に単純で、データの 12 列だけであり、MYSQL にインポートする必要があります
オンラインで見つけたコード、私が見つけたファイルテスト済みで、ダウンロードしたファイルはすべてフォルダー内にあります。
4 つのファイルがあります 1、data.xls 2.index.php 3、reader.php (ダウンロード) 4、oleread.inc (ダウンロード)

データ内のデータ。 xls テーブル
番号、名前、年、季節、グループ、colornote、colornum、価格、タイプ、サイズ、素材、メモ
レコードは 2 行あります

インデックス コードは次のとおりです
<?require_once 'reader.php'; // ExcelFile($filename, $encoding); $data = new Spreadsheet_Excel_Reader(); // Set output Encoding. $data->setOutputEncoding('gbk'); //”data.xls”是指要导入到mysql中的excel文件 $data->read('data.xls'); @ $db = mysql_connect('localhost', 'root', '123123') or die("Could not connect to database.");//连接数据库 mysql_query("set names 'gbk'");//输出中文 mysql_select_db('test'); //选择数据库 error_reporting(E_ALL ^ E_NOTICE); for ($i = 1; $i <= $data->sheets[0]['numRows']; $i++) {//以下注释的for循环打印excel表数据 /* for ($j = 1; $j < = $data->sheets[0]['numCols']; $j++) { echo "\"".$data->sheets[0]['cells'][$i][$j]."\","; } echo "\n"; */ //以下代码是将excel表数据【3个字段】插入到mysql中, //根据你的excel表字段的多少,改写以下代码吧! $sql = "INSERT INTO test (	num,names,years,season,groups,colornote,colornum,price,types,sizes,materials,note)VALUES('". $data->sheets[0]['cells'][$i][1]."','". $data->sheets[0]['cells'][$i][2]."','". $data->sheets[0]['cells'][$i][4]."','". $data->sheets[0]['cells'][$i][5]."','". $data->sheets[0]['cells'][$i][6]."','". $data->sheets[0]['cells'][$i][7]."','". $data->sheets[0]['cells'][$i][8]."','". $data->sheets[0]['cells'][$i][9]."','". $data->sheets[0]['cells'][$i][10]."','". $data->sheets[0]['cells'][$i][11]."','". $data->sheets[0]['cells'][$i][12]."')"; echo $sql.'< br />'; $res = mysql_query($sql); } ?>


Index.php レポートの実行次のエラー

致命的なエラー: D:AppServwwwaaeeindex.php の 4 行目で非オブジェクトのメンバー関数 read() を呼び出します

ディスカッションへの返信 (解決策)

4 行目 $data->read( 'data.xls');
これは $data がインスタンス化される場所と同じです。
明らかにあなたは不注意で、インターネットからコピーしたコードを注意深くクリーンアップしていませんでした。
2 行目のコメントに $data = new Spreadsheet_Excel_Reader(); という文がまだありませんか。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。