RE: [PHP-DB] PHP on Unix, MS Access on NT clarification
| From: | Andrew Hill | Date: | Fri, 07 Jul 2000 19:29:57 +0000 |
| Subject: | RE: [PHP-DB] PHP on Unix, MS Access on NT clarification | ||
| References: | 1 | Groups: | php.db |
| Request: | Send a blank email to php-db+get-960@lists.php.net to get a copy of this message | ||
Sam,
iODBC is not a driver :) It's a common mistake, and one that I'm trying to
make more clear in my HOWTO :)
iODBC is the driver manager; basically this is the resource that allows
ODBC-aware apps to manipulate ODBC resources. This does not perform the
work of a driver though, which is to take the SQL statements and translate
them to and from the Call Level Interface of the specific database, via
ODBC.
There is also some confusion because iODBC (and the SDK) are opensource, and
maintained by Openlink. We want folks to be able to build ODBC-aware
applications, and to be able to build drivers as well if they wish - the
files that we opensource can be used for both. We even use iODBC under the
covers in our commercial product, and add our driver libraries to it.
So, in answer to your question, you need to install a driver on the Unix
box. I (of course) recommend using our stuff, which gives you an iODBC
driver manager along with it (which is why you can use --with-openlink
instead of --with-iodbc when compiling). If you want to use another
company's driver, we provide the iODBC driver manager for that purpose. Of
course, you won't find a whole lot of ODBC drivers that support non-Windows
boxes as their client side, because most companies adopt/license MS's ODBC
libraries. We felt we could implement ODBC better, faster, smaller, more
thoroughly and across multiple platforms, so Openlink was born, and we
maintain iODBC to encourage ODBC use across multiple platforms _regardless_
of who writes the drivers. It is a vicious myth that ODBC is slow or
cumbersome, fostered by developers' experience with drivers that implement
ODBC poorly.
Enough of a soapbox, our stuff gives you a free download, and doesn't
expire. If you need less than 10 concurrent connections, you can use it for
free, and we will give you whatever support you need to get connected. Go
to www.openlinksw.com, follow the 'Product Availability' link, and get
yourself the 'Multi-Tier' drivers.
The Unix box is your client, and the NT box is your server.
You should also get the SDK, and recompile PHP --with-openlink instead
of --with-iodbc, unless you want to edit the environment variable paths and
odbc.ini to point to more than one place.
If you need the HOWTO, here it is: http://www.iodbc.org/odbc-phpHOWTO.html
and please give me feedback :) as I'm gradually polishing the HOWTO up and
converting it from PHP3 to PHP4 references.
Best regards, and I apologize if I sounded 'religious' in the reply :)
Andrew
----------------------------------------------------
Andrew Hill
Professional Services Consultant
OpenLink Software
http://www.openlinksw.com
Universal Database Connectivity Technology Providers
-----Original Message-----
From: Samuel E. Goin [mailto:samgoin@samgoin.com]
Sent: Friday, July 07, 2000 2:04 PM
To: ahill@openlinksw.com
Subject: Re: [PHP-DB] PHP on Unix, MS Access on NT clarification
Hi Andrew,
Thank you for taking the time to help. I did as you said..
Now I am getting the error:
Warning: SQL error: [iODBC][Driver Manager]Specified driver could not be
loaded, SQL state IM003 in SQLConnect in /home/samgoin/public_html/index.php
on line 12
So, obviously, it is not finding the odbc driver. My sysadmin installed
iODBC since he couldn't seem to get myODBC to install properly.
Any idea of the name of the odbc driver iODBC uses so I can locate it and
point the odbc.ini to it?
Or am I just completely lost?
thanks,
Sam
----- Original Message -----
From: Andrew Hill <ahill@openlinksw.com>
To: Samuel E. Goin <samgoin@samgoin.com>; <php-db@lists.php.net>
Sent: Friday, July 07, 2000 5:36 AM
Subject: RE: [PHP-DB] PHP on Unix, MS Access on NT clarification
> Samuel,
>
> 1. create a DSN on the NT box, using the MS driver, call it 'foo' for this
> example.
> 2. setup your DSN in the odbc.ini on the linux box, ServerType = odbc,
> Database = foo, Host = <nt box name or IP>
>
> That should get you connected :)
>
> Best regards,
> Andrew
> ----------------------------------------------------
> Andrew Hill
> Professional Services Consultant
> OpenLink Software
> http://www.openlinksw.com
> Universal Database Connectivity Technology Providers
>
>
> -----Original Message-----
> From: Samuel E. Goin [mailto:samgoin@samgoin.com]
> Sent: Thursday, July 06, 2000 7:14 PM
> To: php-db@lists.php.net
> Subject: [PHP-DB] PHP on Unix, MS Access on NT clarification
>
>
> Hi,
>
> Can anybody show me an example of the syntax to make a database connection
> from a php script on a unix box to a MS Access database on an NT box?
>
> How do I tell odbc_connect() which machine (IP) the ODBC data source with
> the given DSN resides on? Is the IP somehow part of the DSN, like
> "1.2.3.4:ODBCTEST"?
>
> (I know this is inefficient, but I am bound by customer preferences).
>
> Thanks,
>
> Sam Goin
>
>
>