2016-05-12 6 views
-3

例:$ user = username。テーブル名が$ user + imageのテーブルを作成します。テーブル名はusernameimageです。テーブル名としてPHP変数を渡すことができるMysqlテーブルを作成する方法はありますか?

+0

あなたが何をしようとしたことがありますか?あなたの質問は基本的に、PHPで動的な名前のテーブルを作成できるかどうかを尋ねています。答え:はい。 –

+1

ユーザ用に複数のテーブルを作成することは__redundant__代わりにテーブル 'images'を外部キー 'user_id'で使用する –

+0

**はい**できます。しかし、単一のユーザー用にテーブルを作成することはお勧めできません。システムのスキーマを確認してください。 –

答えて

0

最初に入力をエスケープし、クエリで使用します。

$name = mysqli_real_escape_string($_POST['name']); 
mysqli_query("CREATE TABLE `".$name."` (name VARCHAR(30), age INT, car VARCHAR(30))"); 

文字列をエスケープするとは、その文字列で使用されている引用符(およびその他の文字)のあいまいさを減らすことを意味します。

"Hello World." 

しかし、私の文字列は、その中に二重引用符を持っていたものとします。あなたは、文字列を定義しているときにたとえば、あなたは一般的に二重引用符または一重引用符のいずれかでそれを囲みますか?

"Hello "World."" 

私はあいまいさがあります。インタープリタは文字列がどこで終わるかわかりません。私が二重引用符を保持したい場合、私はいくつかのオプションがあります。私は、文字列の周りに単一引用符を使用することができます。

'Hello "World."' 

それとも私は引用符をエスケープすることができます

"Hello \"World.\"" 
+0

ありがとうございます。それはとても役に立ちました。 – tty

関連する問題