Forum Moderators: open

Message Too Old, No Replies

Couldn't connect to the server

connect to the server; Could not resolve hostname

         

Saint Honore

8:30 am on Jan 24, 2007 (gmt 0)

10+ Year Member



Hello Friends,
I have a problem with postgres. Iam trying to connect to the postgres database which is on the other machine whose IP is 10.2.1.4 by using odbc connect(). I get the below mentioned error.
I have been searching for a while around the net but no luck. Any help would be appreciated.

Driver=PostgreSQL;Server=10.2.1.4:5432;Database=Admin, postgres, pass07

Warning: odbc_connect() [function.odbc-connect]: SQL error: Could not ., SQL state 08001 in SQLConnect in C:\Inetpub\wwwroot\dev\lib\login_functions.php on line 356

Warning: odbc_exec(): supplied argument is not a valid ODBC-Link resource in C:\Inetpub\wwwroot\dev\lib\login_functions.php on line 360

Warning: odbc_num_rows(): supplied argument is not a valid ODBC result resource in C:\Inetpub\wwwroot\dev\lib\login_functions.php on line 361

Warning: odbc_exec(): supplied argument is not a valid ODBC-Link resource in C:\Inetpub\wwwroot\dev\lib\login_functions.php on line 365

Warning: odbc_num_rows(): supplied argument is not a valid ODBC result resource in C:\Inetpub\wwwroot\dev\lib\login_functions.php on line 366

Warm Regards

coopster

6:44 pm on Jan 24, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



Looks like you are using PHP and you aren't getting a connection. First, why not use the PostgreSQL Functions [php.net] as opposed to ODBC functions?

Saint Honore

1:45 pm on Jan 25, 2007 (gmt 0)

10+ Year Member



Hi Coopster,

Thanks for the prompt reply,
The aopplication is already developed with ODBC_Connect() and also i tried using PG-connect() but it gives an error call to undefined function pg_connect().

So i think rather than using pg_connect its better I go with odbc_connect(). Please kindly suggest.

coopster

7:37 pm on Jan 25, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



OK, you likely don't have the PostgreSQL Functions installed.

Back to ODBC -- I would focus first on your connection, particularly the DSN.

justageek

9:38 pm on Jan 25, 2007 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



OK, you likely don't have the PostgreSQL Functions installed.

He is on Windows so it's the extension not loaded I'll bet.

Just enable the extension in the php.ini file. You'll be much happier if you can do as Coopster suggests and not use ODBC.

JAG

Saint Honore

8:44 am on Jan 26, 2007 (gmt 0)

10+ Year Member



Hi,
what should i do to enable extension in the php.ini file. where should i edit?

Thanks

coopster

3:54 pm on Jan 26, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



It is in the extensions section of the configuration file. Search for this line and uncomment it (remove the semicolon from in front of it):
;extension=php_pgsql.dll

You normally have to reboot your HTTP server after making any configuration adjustments. After that, you can run a phpinfo() [php.net] script to see if the extension was loaded properly.

Saint Honore

4:56 pm on Jan 26, 2007 (gmt 0)

10+ Year Member



Hi,

i have done as you have mentioned but now i get an error unable to load dynamic library.
Actually iam using php windows installer On IIS so i don't see the extension folder i.e. ext folder.
Where should that be placed? where i can get that folder?

thanx

coopster

5:03 pm on Jan 26, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



The installer versions don't include any extra external PHP extensions, I always use the manual installation. However, Installation of extensions on Windows [php.net] should get you started.

justageek

4:24 pm on Jan 27, 2007 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Make sure the extension directory is correct. You'll find it defined in the php.ini file as "extension_dir = directory_where_dlls_are".

JAG

Saint Honore

6:52 am on Jan 29, 2007 (gmt 0)

10+ Year Member



Hello Friends,

I have configured everything right.. here is my pga_hba.conf file and it gives the error.
Please do assist me in this, iam going mad L

Here is my hba_conf file.

# PostgreSQL Client Authentication Configuration File
# ===================================================
# Refer to the PostgreSQL Administrator's Guide, chapter "Client
# Authentication" for a complete description. A short synopsis
# follows.
# This file controls: which hosts are allowed to connect, how clients
# are authenticated, which PostgreSQL user names they can use, which
# databases they can access. Records take one of these forms:

# local DATABASE USER METHOD [OPTION]
# host DATABASE USER CIDR-ADDRESS METHOD [OPTION]
# hostssl DATABASE USER CIDR-ADDRESS METHOD [OPTION]
# hostnossl DATABASE USER CIDR-ADDRESS METHOD [OPTION]

# (The uppercase items must be replaced by actual values.)

# The first field is the connection type: "local" is a Unix-domain socket,
# "host" is either a plain or SSL-encrypted TCP/IP socket, "hostssl" is an
# SSL-encrypted TCP/IP socket, and "hostnossl" is a plain TCP/IP socket.

# DATABASE can be "all", "sameuser", "samegroup", a database name, or
# a comma-separated list thereof.

# USER can be "all", a user name, a group name prefixed with "+", or
# a comma-separated list thereof. In both the DATABASE and USER fields
# you can also write a file name prefixed with "@" to include names from
# a separate file.

# CIDR-ADDRESS specifies the set of hosts the record matches.
# It is made up of an IP address and a CIDR mask that is an integer
# (between 0 and 32 (IPv6) or 128(IPv6) inclusive) that specifies
# the number of significant bits in the mask. Alternatively, you can write
# an IP address and netmask in separate columns to specify the set of hosts.

# METHOD can be "trust", "reject", "md5", "crypt", "password",
# "krb4", "krb5", "ident", or "pam". Note that "password" sends passwords
# in clear text; "md5" is preferred since it sends encrypted passwords.

# OPTION is the ident map or the name of the PAM service, depending on METHOD.
# Database and user names containing spaces, commas, quotes and other special
# characters must be quoted. Quoting one of the keywords "all", "sameuser" or
# "samegroup" makes the name lose its special character, and just match a
# database or username with that name.

# This file is read on server startup and when the postmaster receives
# a SIGHUP signal. If you edit the file on a running system, you have
# to SIGHUP the postmaster for the changes to take effect. You can use
# "pg_ctl reload" to do that.

# Put your actual configuration here
# ----------------------------------
# If you want to allow non-local connections, you need to add more
# "host" records. In that case you will also need to make PostgreSQL listen
# on a non-local interface via the listen_addresses configuration parameter,
# or via the -i or -h command line switches.

# TYPE DATABASE USER CIDR-ADDRESS METHOD

# IPv4 local connections:
host all all 127.0.0.1/32 md5
host Admin all 10.2.1.4/32 md5

host Admin all 10.2.1.4/32 md5
# Queries & Admin for development over VPN GMG 20060613
host all all 10.2.1.4/32 md5

# IPv6 local connections:
#host all all ::1/128 md5

Iam connecting to the server 10.2.1.4 using odbc_connect(). It is gives me the same error “unable to connect to the server.

This is my code.
$DSN = "Driver=PostgreSQL;Server=10.2.1.4:5432;Database=Admin";
$U = "postgres";
$P = "pos07";
$conn = odbc_connect($DSN, $U, $P);
if ($conn)
{
echo "connected successfully...!";
}
else
{
echo"unable to connect to the server...!";
}

It is gives me the same error “unable to connect to the server.

coopster

6:58 pm on Jan 29, 2007 (gmt 0)

WebmasterWorld Administrator 10+ Year Member



So you decided to stick with odbc then? Have you determined if any specific errors were available using odbc_errormsg() [php.net]?

Saint Honore

5:43 am on Jan 30, 2007 (gmt 0)

10+ Year Member



Hi Coopster,

Can you please guide me where i should add that function?

Regards

justageek

2:59 pm on Jan 30, 2007 (gmt 0)

WebmasterWorld Senior Member 10+ Year Member



Add it on the line after the odbc_connect line.

JAG