LoginSignup
0
0

HTMLでアップロードしたファイルのデータをPHPで取得・格納する方法

Posted at

1. HTMLでのファイル選択

HTMLでファイルを選択するためのフォームを作成します。

<form action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="uploaded_file">
    <input type="submit" value="Upload">
</form>

このフォームは、ファイルを選択し、upload.phpにデータをPOSTするためのものです。

2. PHPでのファイルデータの取得

upload.phpで選択されたファイルのデータを取得します。

<?php
if (isset($_FILES['uploaded_file'])) {
    $filename = $_FILES['uploaded_file']['name'];
    $tempPath = $_FILES['uploaded_file']['tmp_name'];
    $fileSize = $_FILES['uploaded_file']['size'];
    $fileType = $_FILES['uploaded_file']['type'];
}
?>

このコードは、アップロードされたファイルの情報(ファイル名、一時パス、ファイルサイズ、ファイルタイプ)を取得します。

3. アップロードしたファイルのレコードを変数に格納

アップロードされたファイルの内容を行ごとに読み取り、変数に格納します。

$records = []; // レコードを格納する配列を初期化

if (isset($_FILES['uploaded_file']) && $_FILES['uploaded_file']['error'] === UPLOAD_ERR_OK) {
    $file = new SplFileObject($_FILES['uploaded_file']['tmp_name'], 'r');
    $file->setFlags(SplFileObject::READ_CSV);

    foreach ($file as $row) {
        if (!empty($row)) { // 空の行をスキップ
            $records[] = $row;
        }
    }
}

// $records 配列には、CSVファイルの各レコードが格納されています。

このコードは、アップロードされたCSVファイルの各レコードを読み取り、$records 配列に格納します。この配列を使用して、データベースへの保存やその他の処理を行うことができます。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0