PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : problem mit counter



Tuxist
17-02-2006, 19:35
Ich habe php5 apache2 und postgesql 8.1.
Fehlermeldung:

Warning: pg_exec(): supplied argument is not a valid PostgreSQL link resource in /var/www/tuxist/counter.php on line 9
Es ist ein Fehler in der Datenbank-Verbindung aufgetreten.



<?
$host = "localhost";
$port = "5432";
$user = "xxx";
$password = "xxx";
$dbname = "xxx";

$conn = @pg_connect ("dbname=$dbname user=$user port=$port host=$host password=$password");
$result = pg_Exec($db,"SELECT * FROM counter;");
if (!$result) {
echo "Es ist ein Fehler in der Datenbank-Verbindung aufgetreten.\n";
exit;
}

$daten = pg_fetch_array($result,0);
$counter = $daten[counter];
$ip = gethostbyname($REMOTE_ADDR);

session_start();
$session_ip = session_is_registered($ip);

if($ip != $session_ip)
{

$counter = ++$counter;
$result = pg_Exec ($db, "UPDATE counter SET counter = '$counter' WHERE id = '1';");
if (!$result) {
echo "Es ist ein Fehler in der Datenbank-Verbindung aufgetreten.\n";
exit;
}
}
$counter = strval($counter);
$counter = chunk_split($counter,1,";");
$counter = explode(";",$counter);

for($i=0; $i<count($counter); $i++)
{
echo "&count".($i+1)."=".$counter[$i];
}

session_register($ip);

@pg_exec($db,"end;");
exit;
?>

Batosai
17-02-2006, 21:07
Hallo,

1.) "pg_exec" ist deprecated! (Stattdessen sollte "pg_query" verwendet werden)
2.) die variable "$db" ist nicht definiert!

Laut docu erwartet die funktion eine Connection-resource - ergo sollte da "$conn" stehen und nicht "$db"

..hoffe geholfen zu haben.

Gruß
Batosai

Romanday
18-02-2006, 15:30
Sollte geben $dbname ausgetauscht werden...