Re: mssql_connect error only on command line

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi again!

Allright, great! You see that user manuals can be very useful if they just are read carefully enough! :)

The user contributions to the PHP manual are very often quite informative and it's great that people document the problems and solutions.

I think you're quite near the truth here about the version thing and how CLI and Apache loads the dll:s. Maybe that's something that can be configured, but you probably made the best solution to replace the old file.

Cheers,
Krister Karlström, Helsinki, Finland

Molteni Davide wrote:

Hi,

I red the http://www.php.net/manual/en/function.mssql-connect.php in a more
accurate manner, and I found an user contribution note suggesting to substitute
the ntwdblib.dll with a newer one.
The version of the old (original from the PHP v5.2.5 installation) is
2000.2.8.0
and the newer version I found on the same machine is 2000.80.2039.0.
Now it works fine.

Maybe the differt behaviour between the php CLI (command line interface) and
apache is that the cli search the dll in the installation folder and apache
search in the windows system folder.

Thanks for the big help.

Regards.

Davide


2008/4/2, Krister Karlström <krister.karlstrom@xxxxxxxxx>:
Hi!

Please have a look at the manual pages (if you have not allready done
that). There might be some information for you in the user comments:

http://www.php.net/manual/en/function.mssql-connect.php

Manual page about command line scripting:

http://www.php.net/manual/en/features.commandline.php

Now you're using windows so I don't think that FreeTDS is used, right? But
if you were on a Linux environment you should note that you need to have the
server configured in the config file for FreeTDS, exactly in the same way
your connecting. That means if you use fully qualified domain names the
server should be registered with the same hostname in freetds.conf. But that
has probably nothing to do with this now since you're using Windows...

The documentation of mssql_connect() says that you can specify a
portnumber like you did, but I found some examples on the net using a colon
(:) instead. Try that also, or try with the default port number... I'm not
sure if that is gonna help you at all, but it's worth trying...

Or maybe you have some problem with name resolution through DNS... Try
using the IP adress when connecting... It's really hard to tell what's
wrong. However, I have seldom used PHP in a Windows environment so maybe I'm
the wrong person to answer your questions! :) I do however have a command
line application running on Windows XP that successfully uses MySQL on a
Linux server, never had any trouble with that...

Greetings,
Krister Karlström, Helsinki, Finland

Molteni Davide wrote:

Hi,
thanks for your quick answer,

but in the script I don't use sessions variables to store host, user and
password, I wrote something like that:
$sc=mssql_connect("hostname,1433","userid","password");

Can you please tell me where I can find information about how to design
scripts for either the environment?

Thanks a lot.

Davide

2008/4/2, Krister Karlström <krister.karlstrom@xxxxxxxxx>:

Hi!

That description did not help us very much... I think you're just
connecting using the wrong credentials, or using no at all. From where
do
you grab the hostname, username and password? Maybe it's stored in
your
session or something, and that session is not working in your command
line
environment..? It could be just about anything that's your problem! :)

My advice is to take a look att the parameters using to connect to the
server, maybe echo them to stdout before doing your connect... It
might be
that they are not defined when running your script on command-line.

In general, very few script are written in such a way that they work
the
same way in a webserver environment and on command line. You should
design
your scripts for either the environment.

Greetings,
Krister Karlström, Helsinki, Finland

Molteni Davide wrote:

 Hi,

I have a problem with all my php scripts that use MS SQL Server, but
only
when I start them from the command line
I'm using Apache 2.2.4 with PHP 5.2.5 on a server Win2k3 with SP2,
and
MS
SQL Server 2000 on another Win2k3 server.
If I run the same script using a webbrower as an internet page it
works
fine,
but if I run it from the command line (c:\>php scipt.php) I will
receive
messages like this:
"Warning: mssql_connect(): Unable to connect to server:
servername,1433
in
c:\script.php on line #"
Can someone have an idea what could be the problem?
Can someone please help me?
What should I do to make it working?
Tanks a lot in advance.

Davide







--
PHP Database Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [PHP Users]     [Postgresql Discussion]     [Kernel Newbies]     [Postgresql]     [Yosemite News]

  Powered by Linux