
質問をお願いします。
PHPからCSVをアップロードして、同時にmysqlに登録しようと思っていますが、
うまくいきません。データーベースに接続しているのですが、
テーブルを指定しても、うまくいかなく困っています。
現在、下記のプログラムはテーブルを指定していません。
テーブル指定して作成方法を教えていただければ助かります。
PHPが詳しい方、よろしくお願いします。
<?php
// データベース接続情報
$dsn = "mysql:host=〇〇〇;dbname=〇〇〇;charset=utf8mb4";
$username = "〇〇〇";
$password = "〇〇〇";
// PDOオブジェクトの作成とオプション設定
$options = array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false
);
try {
$pdo = new PDO($dsn, $username, $password, $options);
} catch (PDOException $e) {
die("接続失敗:" . $e->getMessage());
}
?>
No.1ベストアンサー
- 回答日時:
// CSVファイルを1行ずつ読み込み、データベースに挿入
while (($data = fgetcsv($file)) !== false) {
// $data 配列の各要素にアクセスし、適切な変数に代入
// 例: $data[0] は1列目のデータ、$data[1] は2列目のデータ
$column1 = $data[0];
$column2 = $data[1];
// 他の列も同様に
// INSERT文を準備
$stmt = $pdo->prepare("INSERT INTO テーブル (column1, column2) VALUES (:column1, :column2)");
$stmt->bindParam(':column1', $column1);
$stmt->bindParam(':column2', $column2);
// 他の列も同様にバインド
// SQLを実行
$stmt->execute();
}
fclose($file);
byGPT
No.2
- 回答日時:
MySQL データベースに接続しましょう
https://www.php.net/manual/ja/pdo.connections.php
MySQL データベースに登録するデータ操作用 SQL を用意しましょう
https://dev.mysql.com/doc/refman/8.0/ja/insert.h …
例)
$sql = "insert into テーブル名 values ('値1', '値2')";
MySQL データベースへ SQL を発行するトランザクションを実行しましょうhttps://www.php.net/manual/ja/pdo.transactions.php
例)
$dbh->beginTransaction();
$dbh->exec($sql);
$dbh->commit();
大量データを登録するなら SQL をパラメーター化して効率化しましょう
https://www.php.net/manual/ja/pdo.prepared-state …
例)
$sql = "insert into テーブル名 values (?, ?)";
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
画像ファイルの名前をそのままU...
-
PHP8でWarning:Undefined varia...
-
phpの問い合わせフォームを作っ...
-
BASIC認証のフォームをデザイン...
-
composerをインストールしたい...
-
HTML PHP ラジオボタンのイベント
-
PHP8を使うと、大量のWarningが...
-
ファイルアップロードに関して...
-
PHPのエラーの解消法について教...
-
$_SESSIONに渡した後はそのまま...
-
marginの値でマイナス値を設定...
-
submitで思うようにページが遷...
-
php でqiitaのサイトにあったフ...
-
SplFileObject を利用したとき...
-
PHPの勉強してます。 配列のと...
-
アップロードファイルを表示す...
-
複数のパソコンの中の1つのパソ...
-
返信機能のツリー構造の深さを...
-
PHPについて。
-
phpのheader("Location:#pos")...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ヒアドキュメントの中のfor文
-
C言語でCSVファイルの行数を読...
-
Resource id #3 と表示されま...
-
複数行のデータのPOST処理に関して
-
CSVデータを使ったページングと...
-
別ファイルの構造体の値を読み...
-
自動で番号を振りたい
-
配列を利用して表示されるテー...
-
データベースに削除機能を追加...
-
CSVデータの行数カウントをした...
-
AならBを読み込む場合
-
C言語の配列とポインタについて
-
PHP ファイル読み取りについて。
-
phpの掲示板で新しい順に表...
-
php4で同じ要素の数を数えてフ...
-
CSV読込(fgetcsv関数)で「手...
-
PHPからCSVをアップロード後、m...
-
すみません・・誤字脱字が多い...
-
エラーメッセージ(無効な間接...
-
CSVファイルの最終行のデー...
おすすめ情報