Classe de conexão com banco de dados PostGreSQL [golfinho/Elefante]
Publicado por Emiliano Eloi Silva Barbosa 04/04/2007
[ Hits: 11.393 ]
Homepage: http://emilianoeloi.com.br
Tradução do script php de leo genilhu:
http://www.vivaolinux.com.br/scripts/verScript.php?codigo=257
Classe de conexão com banco de dados PostGreSQL, com métodos de inserção e atualização de query's.
Ótimo para quem esta iniciando OOP.
class database{ var $db_HOST = ""; var $db_PORT = ""; var $db_USER = ""; var $db_PASS = ""; var $db = ""; var $CONST_ERRO = "erro ao conectar no nosso banco"; var $dbc; var $last_id; function database($db, $user, $pass="nopass",$host="localhost", $port=5432){ $this->db_HOST=$host; $this->db_PORT=$port; $this->db_USER=$user; $this->db_PASS=$pass; $this->db=$db; $this->connect_db(); } function connect_db(){ $connect_string = "host=".$this->db_HOST." port=".$this->db_PORT." user=".$this->db_USER." password=".$this->db_PASS." dbname=".$this->db; $this->dbc = pg_connect($connect_string); return $dbc; } function delete_db($table,$id){ $Campo_id = $this->getPrimaryKey($table); $tmp="delete from $table where $Campo_id='$id'"; $sts = pg_query($this->dbc,$tmp) or die($this->CONST_ERRO . pg_last_error()); return $sts ; } function close_db (){ pg_close($this->dbc); } function insere_db($campos,$valores,$tab){ $inicio="INSERT INTO $tab("; $meio=") VALUES ("; $fim=")"; $valor = sizeof($campos); $strc=""; for($i=0;$i <= ($valor-1);$i++){ $strc.="$campos[$i]"; if($i != ($valor-1)){ $strc.=","; } } $strv=""; for($k=0;$k <= ($valor-1);$k++){ $strv.="'$valores[$k]'"; if($k != ($valor-1)){ $strv.=","; } } $insere="$inicio$strc$meio$strv$fim"; $this->query_db($insere); $this->setLastID($tab); } function query_db($sql){ return pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error()); } function reg_db($table){ $tmp="select * from $table"; $sts = pg_query($this->dbc,$tmp) or die($this->CONST_ERRO . pg_last_error()); $num = pg_num_rows($sts); return($num); } function getPrimaryKey($table){ $sql = "select indexdef from pg_indexes where tablename = '$table' and indexname LIKE '%pkey';"; $res = pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error()); $resultado = pg_fetch_result($res, 'indexdef'); $arr_temp = explode("(",$resultado); $arr_temp2 = $arr_temp[1]; $arr_temp = explode(")",$arr_temp2); return $arr_temp[0]; } function setLastID($table){ $sequence_name = $table . "_" . $this->getPrimaryKey($table) . "_seq"; $sql = "select currval('$sequence_name') AS lastid"; $res = pg_query($this->dbc,$sql) or die($this->CONST_ERRO . pg_last_error()); $this->last_id = pg_fetch_result($res,'lastid'); } function id_db(){ return $this->last_id; } };
» Clenisson Calaça>>Sistema de notícias v2004.1
Classe básica de acesso a PostGreSQL pronta para extensões
Nenhum comentário foi encontrado.
Subindo o Zabbix e Grafana no Podman com Pod
Habilitar a aceleração por hardware AMD AMF no OBS
Roubando bits (parte 2): como resolver questões rapidamente sem calculadora
Usando Linux para operar plataformas de análise gráfica na Bovespa (B3)
Instalando Google Chrome no Ubuntu 22.04 LTS
Bodhi Linux: melhor distro Linux para Atom N455
Solução Touchpad Notebook Lenovo S145
Dual boot - Opensuse Tubleweed + Windows (NVME) [RESOLVIDO] (7)
Comando TAR não compacta diretório apontado (0)
Entrada de argumento ao executar shell script. [RESOLVIDO] (4)