実現したいこと
https://koheik.hatenablog.com/entry/2016/07/08/152936
このようにドラッグ&ドロップでファイルアップロードを実現させたい
発生している問題・分からないこと
bootstrap3で実現させたことはあるがbootstrap5では初めて行う
該当のソースコード
<div id="drag-drop-area"> <div class="drag-drop-inside"> <p class="drag-drop-info">ここにファイルをドロップ</p> <p>または</p> <input type="file" value="ファイルを選択" name="image"> <p class="drag-drop-buttons"><input id="fileInput" type="file" value="ファイルを選択" name="image"></p> <input type="value" value="送信"> </div> </div> <script> if (!isset($_FILES['image']['error']) || !is_int($_FILES['image']['error'])){ echo "ファイルアップロードエラー"; } else { $file_name = $_FILES['image']['name']; $extension = pathinfo($file_name, PATHINFO_EXTENSION); //拡張子取得 $tmp_path = $_FILES['image']['tmp_name']; $file_dir_path = "upload/"; $uniq_name = date("YmdHis").md5(uniqid(microtime(),1)).session_id() . "." . $extension; if (is_uploaded_file($tmp_path)) { if(move_uploaded_file( $tmp_path, $file_dir_path . $uniq_name)) { chmod($file_dir_path . $uniq_name, 0644); } else { echo "Error:アップロードできませんでした。"; } } } </script>
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
なにもかわらない。これでできるかもわからない
コンソールを見るとエラーがあるみたい
それで出来なかった様子
プログラムはよくわからず原因がつかめないので別の参考サイトをみて実現
補足
こちらの参考サイトがわかりやすい
https://mo2nabe.com/input-file-design/
参考にされたページにも書かれていますが、JavaScriptが必要になりますので、お試しください。
> bootstrap3で実現させたことはあるが
手順は同じです。参考記事のコードもBootstrapは無関係に組まれているように見受けられます。
送る部分はクライアントの仕事で、アップロード自体の処理はサーバの仕事。
サーバ側は変わりません。
クライアント側もあくまでレイアウトだけでは?
jQueryの仕様有無は関係あると思うけど、参考記事ではjQuery使われてないみたいだし、
現在のコードだけではそもそもBootstrap3で出来てたというのが怪しいです。
本当に何も分からないのでしたら、
回答がついてもそれが解決に繋がるものか判断できないのではと思います。
自身の都合の良いコードを書いてくれる人はいないし、
作業依頼をする場でもないので、
自身が理解できるように努めるか、全部業者に丸投げするか
どっちかになります。