COPY FROM file
deve essere gestito da un account superutente e questa restrizione lo rende generalmente inadatto all'utilizzo del Web
Estratto dalla documentazione :
Ma PHP fornisce supporto per COPY FROM stdin
che non ha questa restrizione. Questo esempio dalla documentazione di php mostra come è fatto:
$conn = pg_pconnect("dbname=foo");
pg_query($conn, "create table bar (a int4, b char(16), d float8)");
pg_query($conn, "copy bar from stdin");
pg_put_line($conn, "3\thello world\t4.5\n");
pg_put_line($conn, "4\tgoodbye world\t7.11\n");
pg_put_line($conn, "\\.\n");
pg_end_copy($conn);
Nel caso di un file, dovrai aprire il file con le funzioni php e alimentarlo riga per riga alla connessione postgres con pg_put_line()