2

.csvファイルを持っていますが、データベースにインポートできません。以下のクエリを使用して.csvファイルを解析しました。MySqlにデータを挿入する方法を教えてください。

私のコードは:-

$fp = fopen('test.csv','r') or die("can't open file");
print "<table>\n";

while($csv_line = fgetcsv($fp,1024)) 
{
    print '<tr>';
    for ($i = 0, $j = count($csv_line); $i < $j; $i++) {

        print '<td>'.$csv_line[$i].'</td>';
        $data[] = $csv_line[$i];
    }
    print "</tr>\n";
}
print '</table>\n';
fclose($fp) or die("can't close file");
4

3 に答える 3

4

MySQL では、CSV ファイルからテーブルに非常に簡単にデータをインポートできます。

LOAD DATA LOCAL INFILE 'import.csv' INTO TABLE from_csv FIELDS TERMINATED BY ','  LINES TERMINATED BY '\n'  (FIELD1, FIELD2, FIELD3);

http://dev.mysql.com/doc/refman/5.0/en/load-data.html

例: http://www.techtrunch.com/linux/import-csv-file-mysql-table

于 2013-01-05T05:58:58.720 に答える
0

コードは csv ファイルを取得し、それを表形式のデータ テーブルとしてブラウザーにエクスポートするようです。

mysql テーブルへのインポートについて言及しましたが、mysql 情報がリストされていません。mysql テーブルを作成し、インポートするフィールドをテーブルのデータベース フィールドにマップしてみてください。私にとって最も簡単な方法は、phpmyadmin を使用してロード データ sql を生成することですが、回答に記載されているロード データ ローカル インファイルも、変更するのに十分な理解があれば機能します。

その方法を学んだとき、このチュートリアルを使用しました。 http://vegdave.wordpress.com/2007/05/19/import-a-csv-file-to-mysql-via-phpmyadmin/

于 2013-01-05T06:04:21.550 に答える
0

このコードを使用できます。これが役立つことを願っています
//アップロード ファイル フィールドから csv ファイルをアップロードした後
$handle = fopen($_FILES['csvfile']['tmp_name'], "r");

$header = fgetcsv($ハンドル);

while(!feof($ハンドル)){

while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {

$import="INSERT into csvtest($header[0], $header[1], $header[2], $header[3], $header[4], $header[5],$header[6])値 ('$data[0]', '$data[1]', '$data[2]', '$data[3]', '$data[4]', '$data[5]', '$data[6]')";

mysql_query($import) または die(mysql_error());

}

}

fclose($ハンドル);

于 2013-01-05T06:10:46.990 に答える