Чтобы решить сообщение об ошибке pg_query в PHP - PullRequest
0 голосов
/ 07 августа 2009

Мой код handler.php

 ... 
 // independent variables
 $dbHost = "localhost";
 $dbPort = 5432;
 $dbName = "masi";
 $dbUser = "masi";
 $dbPassword = "123456";

 $conn = "host=$dbHost port=$dbPort dbname=$dbName user=$dbUser password=$dbPassword";

$dbconn = pg_connect($conn);

$sql = "SELECT username, passhash_md5, email 
         FROM users$
         WHERE username='a'        // to get these data from lomake.php
         AND email='a' 
         AND passhash_md5='a'";

     $result = pg_query($conn, $sql);
     if(!$result) {
         echo "An error occurred - Masiii!\n";
         exit;
     }
?>

Я помещаю «username = a», «email = a» и password = «a» в форму, которая обрабатывает скрипт handler.php в Firefox. Я получаю

Warning: pg_query(): supplied argument is not a valid PostgreSQL link resource in /var/www/sivusto/handler.php on line 56
An error occurred - Masiii! 

Я не уверен, где ошибка, поскольку я использую тот же синтаксис, что и , некоторые примеры на PHP.net .

Как вы можете устранить ошибку?

Ответы [ 2 ]

3 голосов
/ 07 августа 2009

Ваше соединение хранится в $ dbconn, а не в $ conn

Здесь вы получили соединение.

$conn = "host=$dbHost port=$dbPort dbname=$dbName user=$dbUser password=$dbPassword";

$dbconn = pg_connect($conn);

Это то, где вы запросили

$result = pg_query($conn, $sql);

должно быть

$result = pg_query($dbconn, $sql);

PG_Connect возвращает ссылку на соединение, которое вы сохранили в $ dbconn. Вы пытаетесь использовать строку подключения в качестве ресурса, который недопустим.

2 голосов
/ 07 августа 2009

Вы сделали опечатку:

$result = pg_query($dbconn, $sql);

используйте $ dbconn вместо $ conn в этой строке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...