

私の環境は
Windows 10
MAMP
です。
「PHP 画像のアップロード Qiita」 サイトは以下のURLから見れます。
https://qiita.com/ryo-futebol/items/11dea44c6b68 …
以上のURLサイトの内容に
◆DBにはファイル名保存
◆DBのファイル名を元に画像表示
とあります。
データーベースはMySQLでいいと思いますが
データーベースの設定の記載がありません。
たぶん それは 自分で ファイルのプログラム見ながら
任意で作成してくださいと思います。
この場合
DB(データーベース名) と TB(テーブル名) を作りたいのですが!
1)DB名は$dsn = "mysql:host=localhost; dbname=xxx; なので
dbname=xxx; DB名は任意で作成しなさいと思います。
・DB作成:CREATE DATABASE up; とします。
2)TB名は任意でいいのでしょうか?
いずれにせよTB作成は必須なので、仮にTB名を image とした場合
カラムは何が必要でしょうか?
CREATE TABLE `image` (
`picture` varchar(255) NOT NULL;
他に何かありますか?
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
あと、MySQLの文字コードはutf8
No.1
- 回答日時:
$dsn = "mysql:host=localhost; dbname=xxx; charset=utf8";
MySQLでデータベースがxxxはその通り。
$sql = "INSERT INTO images(name) VALUES (:image)";
$sql = "SELECT * FROM images WHERE id = :id";
〜中略〜
<?php echo $image['name']; ?>
表名はimages、列構成はidとname。
idはAUTO_INCREMENT列、nameがファイル名。
INSERT文でid列には値を格納せず、検索時はid列を条件にしているため、AUTO_INCREMENTであることが分かります。
リンク先で分かるのは、以上のことです。
nameの長さは、ファイル名の最大長をどうするかによります。
CREATE TABLE images
(id INT PRIMARY KEY AUTO_INCREMENT
,name VARCHAR(255) NOT NULL)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL `picture` varchar(255) のコマンドで間違いないでしょうか? 1 2022/11/21 04:08
- MySQL PHPとMySQLを使った掲示板の作り方 1 2022/06/02 13:00
- MySQL あと、MySQLの文字コードはutf8 気になりますね 1 2022/12/01 07:22
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- Ruby pandasでsqlite3にテーブル作成・追加・読み出しでindexの取り扱い方教えてください 5 2023/03/08 09:57
- IT・エンジニアリング ドメイン駆動設計の値オブジェクトについて質問 1 2023/05/13 02:50
- その他(プログラミング・Web制作) セレクトボックスで選択された値をコントローラーで使用したい 2 2022/07/26 16:41
- JavaScript clear機能を失わずにファイルアップロード機能を作成したい 3 2023/06/10 16:12
- PHP php エラー 2 2022/10/23 16:43
- その他(データベース) pythonでsqlight勉強中、クエリー結果の利用法教えて下さい 1 2022/04/28 20:38
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
DBエラーの意味
-
MYSQLで全てのカラムから検索す...
-
スパイウェア対策にspybotとADa...
-
SELECT文で、指定カラム以外の...
-
SQLServerのプライマリキーとイ...
-
一部のカラムでdistinctし全て...
-
ワイルドカード式で検索
-
「主キー」の「PRI」の守備範囲...
-
ここでは「サブクエリ」必要な...
-
【SQL】select に ワイルドカー...
-
カラムとコラムの使い分け
-
SQLです!!教えてください。
-
カラムをコピーして、新規カラ...
-
トグルボタンの帳票フォーム連...
-
SQLについて教えて下さい。 SEL...
-
update時にtimestampが更新され...
-
エクセルかワードで家系図を作...
-
文字列のカラムを数字と比較したい
-
SQLiteでのDateTimeの扱い
-
mysqlの配列データの読み方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SELECT文で、指定カラム以外の...
-
一部のカラムでdistinctし全て...
-
UNIONする際、片方テーブルしか...
-
MYSQLで全てのカラムから検索す...
-
AUTO_INCREMENTに0はダメ?
-
GREATESTで NULLをスルーする方...
-
now()かCURRENT_TIMESTAMPか
-
sql , insert で空行(全ての列...
-
SQLでカラムを追加し、条件に合...
-
【SQL】select に ワイルドカー...
-
MySQLで先頭にカラムを追加
-
カラムをコピーして、新規カラ...
-
ROUND関数で、四捨五入ができな...
-
カラムとコラムの使い分け
-
カラム上の重複を削除するクエ...
-
頭に0が付く文字
-
ドロップダウンリストの連動し...
-
エクセルかワードで家系図を作...
-
update時にtimestampが更新され...
-
日付を一括UPDATE
おすすめ情報
素晴らしい ご過当をいただきましてありがとうございました。
助かります。
以下の流れで作ってみました。
mysql> use mysql -u root -proot
Database changed
mysql> use up
Database changed
mysql> CREATE TABLE `images`
-> (`id` INT PRIMARY KEY AUTO_INCREMENT,
-> `name` VARCHAR(255) NOT NULL)
-> ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;
Query OK, 0 rows affected (0.01 sec)