- ベストアンサー
【PHP】CSVファイルの内容をMySQLで登録する方法とは?
- 超初心者の方に向けて、PHPを使ってCSVファイルの内容をMySQLに登録する方法をご紹介します。
- 具体的な手順やサンプルコードを交えながら、CSVファイルの読み込みからMySQLへのデータ登録までを解説します。
- また、参考になる情報源や注意点も併せてご紹介します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
そもそもPHPからMySQLへのアクセス方法がわからないという質問に見え すでに質問の内容が元ネタからはなれている感がありますが 流れ的にはこんな感じで。 <? $host='localhost'; $user='root'; $passwd='hogehoge'; $db='mydb'; $link=mysql_connect($host,$user,$passwd); mysql_select_db($db,$link); $sql="・・・"; $res=mysql_query($sql,$link) or die("error:".mysql_error()); ?>
その他の回答 (2)
- yambejp
- ベストアンサー率51% (3827/7415)
>で、$splの内容(aaa.csv)が表示される状態です。 っというのは INSERT INTO `table` (`day`,`ver`,`module`,`naiyou`) VALUES('091010-01','TO_001','\'【内装】\'','\'ドアの取り付け\''), ('091011-02','TO_002','\'【外装】\'','\'タイル拭きつけ\'') が表示されるということでよろしいですか? (それとも単にcsvのデータが表示されるだけ?) あとはmysqlへデータを投げるだけです。 http://www.php.net/manual/ja/book.mysql.php
お礼
再び、ご回答頂きありがとうございます。 >が表示されるということでよろしいですか? はい。その通りです。 >あとはmysqlへデータを投げるだけです。 参考のURLを見ています。 現在のところ、自己解決に至っておりませんがもう少し粘ってみたいと思います。
補足
URLを参考に、また違うサンプルなどwebで探しテストしてみましたが、 MySQL登録にいたっておりません。 引き続きお解りでしたら、教えていただけると助かります。
- yambejp
- ベストアンサー率51% (3827/7415)
いくつかやり方はあると思いますが、はしょって書くとこんな感じ <? $fname="aaa.csv"; $fp=fopen($fname,"r"); $count=0; $sql=""; while (($data = fgetcsv($fp, 1024, ",")) !== FALSE) { $str=""; foreach($data as $val){ if($str!="") $str.=","; $str.="'".addslashes($val)."'"; } if($sql!="") $sql.=","; $sql.="({$str})"; } $sql="INSERT INTO `table` (`day`,`ver`,`module`,`naiyou`) VALUES".$sql; print $sql; ?> セキュリティなどのことを考えるともう少しきちんとエスケープ処理を 入れた方がいいですが、フローをみるだけならこれでわかると思います。
お礼
早速のご回答を頂き、ありがとうございます。 教えていただいた方法を試して見ましたが上手く行きませんでした。 私の理解不足が大きいのですが、 $sql="INSERT INTO `table` (`day`,`ver`,`module`,`naiyou`) VALUES".$sql; print $sql; ?> で、$splの内容(aaa.csv)が表示される状態です。 勘違いなどご指摘いただけるとありがたいです。
お礼
ありがとうございました。 できました!! 助かりました。