Ciao,
rileggendo il codice ho notato altre cose
primo, modifica il tuo metodo db_open
Codice PHP:
function db_open() {
$this->host = $host = 'localhost';
$this->user = $user = 'administrator';
$this->password = $password = 'mikmik';
$this->dbname = $dbname = 'postgres';
$this->port = $port = 5432;
}
in questo modo
Codice PHP:
function db_open() {
$this->host = 'localhost';
$this->user = 'administrator';
$this->password = 'mikmik';
$this->dbname = 'postgres';
$this->port = 5432;
}
Secondo, cerca di procedere un passo per volta, esegui solo la prima query, commenta tutto il resto, ad esempio, prova questo codice
Codice PHP:
$login = 'my_user';
$password = 'my_password';
$db1 = new db();
$db1->db_open();
$db1->db_connect();
$result1 = $db1->query("INSERT INTO utente (login, pw, tipo_utente) VALUES ('".$login."', '".$password."', 'privato')");
if (!$result1) {
echo "An error occured.\n" . pg_last_error();
exit;
}else{
echo "Utente ".$login." inserito! Ora loggati alla pagina iniziale";
//header('Location: index.php');
}
Non so se hai solo dimenticato di postarle o proprio le hai dimenticate, ma le variabili $login, $password e $usr non sono mai state definite.
Inoltre nella prima query hai inserito solo apici singoli, nell'esempio che ti ho postato cìè la versione corretta, con apici singoli e doppi .
Facci sapere
Ciao