CONTENTS
Lastmodified 2019-01-05 (土) 07:12:41
id とファイル名の関連は「file」に格納されている。
mysql> show columns from file; +-------------------+-------------+------+-----+---------+----------------+ | Field | Type | Null | Key | Default | Extra | +-------------------+-------------+------+-----+---------+----------------+ | id | int(11) | NO | PRI | NULL | auto_increment | | name | varchar(64) | NO | UNI | | | | type | varchar(64) | NO | | | | | filesize | int(11) | NO | | 0 | | | original_filename | text | YES | | NULL | | | created_at | datetime | NO | | NULL | | | updated_at | datetime | NO | | NULL | | +-------------------+-------------+------+-----+---------+----------------+ 7 rows in set (0.00 sec)
画像ファイルの実データは「`file_bin.bin`」に格納されている。
mysql> show columns from file_bin; +------------+----------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +------------+----------+------+-----+---------+-------+ | file_id | int(11) | NO | PRI | 0 | | | bin | longblob | YES | | NULL | | | created_at | datetime | NO | | NULL | | | updated_at | datetime | NO | | NULL | | +------------+----------+------+-----+---------+-------+ 4 rows in set (0.01 sec)
<form enctype="multipart/form-data" action="./edit.php" method="POST"> <table border="1"> <tr><td>file_id</td><td> <input name="file_id" type="text" size="6" maxlength="6" /> </td></tr><tr><td><input type="hidden" name="MAX_FILE_SIZE" value="70000000" /> <input name="image" type="file" /></td><td> <p><input type="submit" name="save" value="Submit" /><p></td></tr> </table> </form> <?php // https://hijiriworld.com/web/mysql-img-binary/ $url = "localhost"; $user = "username"; $pass = "hogehoge"; $db = "fugafuga"; if (!empty($_POST)) { // バイナリデータ $fp = fopen($_FILES["image"]["tmp_name"], "rb"); $bin = fread($fp, filesize($_FILES["image"]["tmp_name"])); fclose($fp); $bin = addslashes($bin); // file_id $file_id = $_POST['file_id']; // MySQL登録 $link = mysqli_connect( $url, $user, $pass ) or die("MySQLへの接続に失敗しました。"); $sdb = mysqli_select_db( $link, $db ) or die("データベースの選択に失敗しました。"); $sql = "UPDATE `file_bin` SET `bin` = '$bin' WHERE `file_bin`.`file_id` = $file_id"; //echo $sql; //echo $file_id ; $result = mysqli_query( $link, $sql ) or die("クエリの送信に失敗しました。"); mysqli_close($link) or die("MySQL切断に失敗しました。"); } ?>
http://rabbitfoot.xyz/file-dialog-autmation/
http://blog.livedoor.jp/atsu1997/archives/4613674.html
https://www.ipentec.com/document/sql-multi-record-update
http://daiyamamoto.hatenablog.com/entry/20080616/p1
Total access 793:本日 1:昨日 3