HTMLフォームでWebサイトにファイルをアップロードする方法をわかりやすく解説
Webサイトの利用者に外部ファイルをアップロードしてもらいたい場合には、「ファイルアップロードボックス」(ファイル選択ボックスとも呼ばれます)を使用します。これも他のフォーム部品と同様に <input> 要素を使って作成しますが、type 属性に「file」を指定する点が特徴です。
基本的な書き方
ファイルアップロードボックスは、以下のように <input type="file"> を記述するだけで簡単に実装できます。
<!DOCTYPE html>
<html>
<head>
<title>File Upload</title>
</head>
<body>
<form>
<input type = "file" name = "upload" accept = "image/*" />
</form>
</body>
</html>
このコードをブラウザで表示すると、「ファイルを選択」というボタンが表示され、クリックするとローカルのファイルを選択できるダイアログが開きます。上記の例では accept = "image/*" を指定しているため、画像ファイルのみが選択対象になります。
ファイルアップロードボックスの主な属性
| 番号 | 属性と説明 |
|---|---|
| 1 | name コントロールに名前を付けます。この名前はサーバーに送信され、サーバー側でどのデータかを識別して値を取得する際に使用されます。 |
| 2 | accept サーバーが受け付けるファイルの種類(MIMEタイプなど)を指定します。例えば「image/*」ならすべての画像形式、「.pdf」ならPDFファイルのみ選択可能になります。 |
実装時の注意点
実際にファイルをサーバーへ送信する場合は、<form> 要素に enctype="multipart/form-data" を指定する必要があります。これを忘れるとファイルの中身が正しく送信されません。
<form action="/upload" method="post" enctype="multipart/form-data">
<input type = "file" name = "upload" accept = "image/*" />
<button type = "submit">アップロード</button>
</form>
また、multiple 属性を追加すれば、複数のファイルを一度に選択できるようになります。セキュリティの観点から、サーバー側でもファイルの種類やサイズのチェックを行うことをおすすめします。
-
HTMLでファイルアップロードボタンを作成する方法をわかりやすく解説
HTMLでファイルアップロードボタンを作成するには、<input>要素のtype属性に「file」を指定します。これにより、ユーザーが自分のPCやスマートフォンからファイルを選択してアップロードできるボタンが簡単に設置できます。 コード例 <!DOCTYPE html> <html> <head> <title>ファイルアップロードボタンの例</title> </head> <body> <h1>ファイルアップロードボタンの例</h1> <p>「ファイルを選択」ボ
-
Pythonで作るWebサイトブロッカー ― 業務時間中にSNSへのアクセスを自動遮断する方法
大手IT企業で働いたことがある方なら、FacebookやYouTube、InstagramといったSNS系のWebサイトが社内からアクセスできないよう制限されていることに気づいた経験があるかもしれません。こうした制限は、サードパーティ製アプリに頼らなくても実現できます。自分専用のオリジナルツールを作れば、好きなWebサイトを自由にブロックできるのです。しかもPythonでWebサイトブロッカーを開発するのは、それほど難しいことではありません。この記事では、指定したWebサイトをブロックするPythonスクリプトの作り方を解説します。前提条件Python 3.x がインストールされていることPy