php
1コード 2//image.php 3 4<!DOCTYPE html> 5<html lang="ja" dir="ltr"> 6 <head> 7 <meta charset="utf-8"> 8 <title></title> 9 </head> 10 <body> 11 <form action="" method="post" enctype="multipart/form-data"> 12 <input type="file" name="file" value=""> 13 <input type="submit" name="submit" value="アップロード"> 14 </form> 15 16 <?php 17 18 19 if(isset($_POST['submit'])){ 20 $filename = addslashes($_FILES['file']['name']); 21 $tmpname = addslashes($_FILES['file']['tmp_name']); 22 $mysql = new mysqli('localhost','root','','testdb'); 23 $sql = "INSERT INTO image(name,path) VALUES('$filename','$tmpname')"; 24 $result = $mysql->query($sql); 25 } 26 27 28 29 ?> 30 31 32 33 34 </body> 35</html> 36
phpで画像をblob型のカラムに保存するプログラムを作成しました。
DBに登録後MySQLを確認すると、blob型のカラムにデータが保存されてはいるのですが、保存データを開こうとすると、
このファイルは読み取れません。
このビットマップファイルは無効であるか、または現在サポートされていない形式です。
というエラーメッセージが表示されて開くことができません。
binファイルを変換しないといけないのかなと思いwebの変換サイトを使用してjpeg型にしようとしましたがそれもできませんでした。
保存方法に問題があるのでしょうか?
PHP,MySQLに詳しい方、どうか改善点を教えてください。
回答2件
あなたの回答
tips
プレビュー