ここから本文です

PHP XLSやCSVをアップしてMYSQLのテーブル作成 PHPとMYSQLで質問です。

arm********さん

2018/8/1022:52:13

PHP XLSやCSVをアップしてMYSQLのテーブル作成

PHPとMYSQLで質問です。

XLSやCSVどちらでもいいのですが、アップロードして
自動的にテーブルを作成するスクリプトの書き方を教えていただけないでしょうか。

カラム名は、そのファイルがカラムが存在するだけ自動で作成します。
a,b,c,d,e,f,・・・・・ と
エクセルのセルの名前と同じように。あとはデータを流し込みたいです。

どなたかお力を貸してください。
よろしくお願いします。

閲覧数:
26
回答数:
1
お礼:
50枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

shi********さん

2018/8/1100:29:58

そのCSVファイルは全行とも同じ列数のデータが存在するという前提でいいですか?


MS-AccessにCSVファイルをインポートするとしても、各カラムの「列定義」を行うことになりますよね?最初に全行のデータを読み込んで、各カラムについて数値型(整数もしくは小数以下あり)なのか文字列型(シングルバイトかマルチバイト)なのかを決める必要があります。

数値型に小数以下があるとさらに面倒ですし、さらに「長さ」をどうするのか(CSVファイルのデータだけ格納できればいいのか)も判断しないといけません。

CSVファイルアップロード
→ 読み込んで基本的な定義例を表示・修正入力のフォームを出力
→ POSTされた列定義に従ってテーブル作成しCSVデータを挿入

という手順になるだろうと朧気に推測しますが・・・



で、データには小数以下の数値を考慮する必要がありますか?(けっこう重要な部分なので)

  • 質問者

    arm********さん

    2018/8/1116:30:32

    ご回答誠にありがとうございます!

    >>
    そのCSVファイルは全行とも同じ列数のデータが存在するという前提でいいですか?

    厳密にはA,B,C,Dと列があったとして、Cの列の一部が空欄だったりしますが、
    基本は、各セルにデータが存在します。
    事前に、エクセルの関数などで空白のセルにデータを仮に入れるということでも大丈夫です。


    データは日付、文字列、整数 のみで、小数点はありません。
    日付は2018/8/11という形です。どんなデータ型でもOKです。文字列でもOKです。

    Accessは操作をしたことがなく、できれば、PHPでファイルアップロードをして
    それをmysqlに入れるという形が希望です。

    csvファイルの1行目には日本語で、カラム名がずらっとA,B,C・・・セルで入っている
    ワケですが、それを、全部除去して、カラム名を、a,b,c,d,e・・・
    と変換をして、存在するだけのカラムを作成して、すべてのデータを流し込みたいというのが希望です。
    よろしくお願い致します。

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問は投票によってベストアンサーに選ばれました!

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる