私はpdoとmysqlを使用しており、既存のテーブルに列を追加する方法をすでに知っていますが、入力フィールドの値で試してみると、変数$....の名前が列として追加されています。
入力フィールドの値を列として追加する必要があるコードは次のとおりです。
public function insertAlterTable($colName)
{
$this->pdo = $this->connectMySql();
$query = 'ALTER TABLE nbs_events ADD $colName CHAR(5) NULL DEFAULT "nee"';
$stmt = $this->pdo->prepare($query);
if(!$stmt->execute()){
return false;
}
$this->pdo = null;
return true;
}
このコードは、trycatchブロック内にラップされています。
また、クラス内。
フロントページでは、次のようなコードを使用しています。
insertAlterTable($_POST['colname']);
colname
入力フィールドの値を列として既存のテーブルに追加するにはどうすればよいですか。
助けてください。
私は次のようにコードを更新したので、それは私のために働きます:
public function insertAlterTable($colName)
{
$colName = mysql_real_escape_string($colName);
$this->pdo = $this->connectMySql();
$query = "ALTER TABLE nbs_events ADD $colName CHAR(5) NULL DEFAULT \"nee\"";
$stmt = $this->pdo->prepare($query);
if(!$stmt->execute()){
return false;
}
$this->pdo = null;
return true;
}