前提・実現したいこと
MySQLiにおいてCREATE TABLEするときに変数を使ってテーブル名を定義したいと思っております。
phpで掲示板を作っており、データベース(phpMyAdminを使っております。)接続後テーブルを作るコードを書いております。
発生している問題・エラーメッセージ
下のコードでは変数$dir_nameに入力された任意のスレッド名を入れて、それをそのまま新しいテーブル名として使おうとしているのですが、データベース内に該当のテーブルが任意のテーブル名と一緒に作成されません。
該当のソースコード
// phpで任意のスレッド名を受け取り、変数$dir_nameに代入。 $dir_nanme = $_POST['thread_name']; // テーブルを作成するSQLをテーブル名$dir_nameとして作成。 $sql = 'CREATE TABLE $dir_name ( id INT(11) UNSIGNED AUTO_INCREMENT PRIMARY KEY, name VARCHAR(20), price INT(11), better_before DATETIME, ) engine=innodb default charset=utf8'; // 実行 $res = $mysqli->query($sql);
試したこと
$dir_nameの部分を""で囲ったり、クオーテーション(.)を前後に置いたりしましたが、結局phpMyAdminに新しいテーブルが追加されることはありませんでした。
補足情報(FW/ツールのバージョンなど)
phpMyadmin 4.9.5
PHP7.1.33
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/26 03:53