Я пытаюсь создать таблицу, имя которой является параметром. Является ли это возможным? Как это:
$result = pg_query("CREATE TABLE '$_POST[nome_arquivo_software]' (
id serial CONSTRAINT pk_'$_POST[nome_arquivo_software]' PRIMARY KEY,
nome varchar (80),
email varchar (80),
estado varchar (80),
acessos numeric
)");
Имя таблицы не строковый литерал, а идентификатор -> заменить одинарные кавычки на двойные -> заключенный в кавычки идентификатор.
Имя поля id не является строковым литералом pk_ +, но все это является идентификатором -> «pk _….»
// <--- intensive checks on $_POST[nome_arquivo_software] and $_POST[nome_arquivo_software] here
$result = pg_query("CREATE TABLE \"$_POST[nome_arquivo_software]\" (
id serial CONSTRAINT \"pk_$_POST[nome_arquivo_software]\" PRIMARY KEY,
nome varchar (80),
email varchar (80),
estado varchar (80),
acessos numeric
)
");
Других решений пока нет …