Re: [INTERFACES] Pg and Perl!!

From: Constantin Teodorescu <teo(at)flex(dot)ro>
To: "Ilhuicatzi Cortes J(dot) Henry" <ic94006(at)solar6(dot)ingenieria(dot)uatx(dot)mx>, PostgreSQL Interfaces <pgsql-interfaces(at)postgresql(dot)org>
Subject: Re: [INTERFACES] Pg and Perl!!
Date: 1999-04-29 05:42:34
Message-ID: 3727F14A.19014A16@flex.ro
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-interfaces

"Ilhuicatzi Cortes J. Henry" wrote:
>
> Hi:
>
> im using Pg to make CGI's beetwen Postgres and perl, where can i find
> examples about Pg. I have tried to make any CGI's and doesn't work fine.
>
> Does someone have any examples about CGI?

Sorry , they are in romaniana language !

#!/usr/bin/perl

# Decomentati urmatoarea linie daca lucrati cu Postgres
use Pg;

$datele = <STDIN>;
@pairs = split(/&/, $datele);
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
# restore blank
$value =~ tr/+/ /;
# restore special char
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
# store them into associative array %VAR
chomp $value; $value =~ s/\r//;
$VAR{$name} = $value ;
}

# preluam cimpurile transmise in variabile
$database = $VAR{'db'};
$data = $VAR{'data'};
$dolar = $VAR{'dolar'};
$oldata=$data;

($zi,$luna,$an)=split(/\./,$data);
if ( $an < 100) { $an += 1900;} $data=$luna.'-'.$zi.'-'.$an;

# Acest rind este obligatoriu pentru inceput de HTML raspuns
print "Content-type:text/html\n\n";

print <<EOM;
<HTML>
<HEAD>
<TITLE>Adaugare curs dolar</TITLE>
</HEAD>
<BODY>
<H1>Curs dolar</H1>

<br>
S-a solicitat actualizarea cursului dolarului
pentru data de <b>$oldata</b> la valoarea de <b>$dolar
Lei/USD</b><br><br>
EOM

$con=PQsetdb('',5432,'','',$database);

$res=PQexec($con,"select * from valuta where data='$data'");
$errmsg=PQerrorMessage($con);
if($errmsg ne '') {
print "EROARE : ",$errmsg;
print "</body></html>\n";
PQclear($res);
PQfinish($con);
exit 1;
}
if(PQntuples($res) > 0) {
print "<B>Informatia valutara pentru data $oldata era introdusa
!!!</b><br>";
print "Cursul valutar pentru aceasta zi era
",PQgetvalue($res,0,1),"<br>";
print "Modificam cu noul curs : ",$dolar,"<br><br>\n";
$sqlcmd="update valuta set dolar=$dolar where data='$data'";
} else {
$sqlcmd="insert into valuta (data,dolar) values ('$data',$dolar)";
}
PQclear($res);
$res=PQexec($con,$sqlcmd);
$errmsg = PQerrorMessage($con);
if ( $errmsg ne '' ) {
print '<font color="#FF0000">';
print "<b>EROARE : ",$errmsg,"</b></font><br>";
print "SQL=$sqlcmd<br>";
} else {
print "Baza de date a fost actualizata cu succes.";
}

PQclear($res);
PQfinish($con);

--
Constantin Teodorescu
FLEX Consulting Braila, ROMANIA

In response to

  • Pg and Perl!! at 1999-04-28 21:51:02 from Ilhuicatzi Cortes J. Henry

Browse pgsql-interfaces by date

  From Date Subject
Next Message Leon Harris 1999-04-29 06:16:39 pgaccess and autonumber fields.
Previous Message Constantin Teodorescu 1999-04-29 05:39:32 Re: [INTERFACES] RPM for PgAccess 0.96