Funzioni per Database Postgres

<?php

function crea () {
  echo "Tento di connettermi al database <font color=#008000>lezione</font>\n";
  echo "con l'utente <font color=#008000>xyz</font><br>\n<!-- ";
  $conn=pg_connect("dbname=lezione user=xyz");
  if (!$conn) {
    echo "-->\nNon ci sono riuscito - mancano o il database o l'utente;<br>\n";
    echo "Tento di connettermi al database\n";
    echo "<font color=#008000>template1</font> con l'utente\n";
    echo "<font color=#008000>xyz</font><br>\n<!-- ";
    $conn=pg_connect("dbname=template1 user=xyz");
    if (!$conn) { // Non esiste l'utente
      echo "Non ci sono riuscito: manca l'utente<br>\n";
      echo "Tento di connettermi al database\n";
      echo "<font color=#008000>template1</font> con l'utente\n";
      echo "<font color=#008000>postgres</font><br>\n<!-- ";
      $conn=pg_connect("dbname=template1 user=postgres");
      echo "-->\nCreo l'utente <font color=#008000>xyz</font><br>\n<!-- ";
      $res = pg_exec ($conn, "create user xyz CREATEDB;");
      if ($res) {
        echo "-->\nCreato l'utente <font color=#008000>xyz</font><br>\n<!-- ";
      } else {
        echo "-->\nErrore nella creazione del nuovo utente<br>\n<!-- ";
      }
      pg_close ($conn);
      $conn=pg_connect("dbname=template1 user=xyz");
    }

    echo "-->\nCreo il database <font color=#008000>lezione</font><br>\n<!-- ";
    $res = pg_exec ($conn, "create database lezione;");
    if ($res) {
      echo "-->\nCreato il database <font color=#008000>lezione</font><br>\n<!-- ";
    } else {
      echo "-->\nErrore nella creazione del nuovo database<br>\n<!-- ";
    }
    pg_close ($conn);
    $conn = pg_connect("dbname=lezione user=xyz");
  }
  return $conn;
}

function connetti () {
   return pg_connect("dbname=lezione user=xyz");
}

function db_exec ($conn, $query) {
	return pg_exec ($conn, $query);
}

function db_row ($rubrica ,$riga) {
	return @pg_fetch_array ($rubrica ,$riga);
}

function db_numrows ($res) {
	return pg_numrows ($res);
}

 ?>

© Ing. Stefano Salvi - released under FDL licence