Hi Bruce,

The setoption error is being thrown because you cannot use
SQLSetConnectOption that way.
Passing arbitrary info to be used by your application isn't really what this
is for, but instead can be used to modify parameters in the ODBC API.

This means you can modify things like SQL_ACCESS_MODE, SQL_AUTOCOMMIT,
SQL_ODBC_CURSORS, etc., (check the 2.x spec - there are several metadata
items that you can control with this API call.)

I'd recommend you just pass a variable to your PHP script, and perhaps
change the username to a read-only/read-write user with  a case statement or
somesuch, based on the application.

Again, I'd strongly recommend you upgrade the OpenLink UDA version as well;
1.5 is something like 5 years old or more.

Best regards,
Andrew Hill
Director of Technology Evangelism
http://www.openlinksw.com/virtuoso/whatis.htm
OpenLink Virtuoso Internet Data Integration Server



> -----Original Message-----
> From: Bruce S. Garlock [mailto:[EMAIL PROTECTED]]
> Sent: Monday, March 25, 2002 10:48 AM
> To: [EMAIL PROTECTED]
> Subject: Re: [PHP-DB] ODBC -- Setting ApplicationID
>
>
> Sure, I'm simply trying to have PHP pass an ApplicationID to the
> ODBC server.
> When a PHP script access the ODBC database, it does not set the
> application:
>
> 10:46:04   connectopts= user=webuser opsys=unix machine=linux application=
>
> As you can see, application= is NULL.  I would like the script to pass
> something, so that my mapping rules on the server would allow
> write access to
> the db, if the PHP application sends a certain name.  Currently our Win32
> applications, like MS Access, send application names.  e.g. Access, sends:
> application=MSACCESS.
>
> Thanks for your help,
>
> Bruce
>
> Andrew Hill wrote:
>
> > Bruce,
> >
> > I'm not sure what you are trying to do - could you clarify?
> > You may be able to simply use the OpenLink Rules Book to set role-based
> > authentication on domain, ip, application, etc.
> >
> > Also, the ODBC Driver version (1.5) you are using is _very_ old and
> > unsupported.
> > I suggest you upgrade to 4.2
> >
> > Best regards,
> > Andrew Hill
> > Director of Technology Evangelism
> > OpenLink Software  http://www.openlinksw.com
> > Universal Data Access & Data Integration Technology Providers
> >
> > > -----Original Message-----
> > > From: Bruce S. Garlock [mailto:[EMAIL PROTECTED]]
> > > Sent: Thursday, March 21, 2002 11:02 AM
> > > To: [EMAIL PROTECTED]
> > > Subject: [PHP-DB] ODBC -- Setting ApplicationID
> > >
> > >
> > > I am trying to set the ApplicationID, when connecting to an ODBC
> > > datasource.  I have tried:
> > >
> > > odbc_setoption ($conn, 1, 1053, "PHPAPP");
> > >
> > > And get a:
> > >
> > > "SQL error: [iODBC][Driver Manager]Option type out of range, SQL state
> > > S1092 in SetConnectOption"
> > >
> > > Basically, I want my PHP script to pass the application name
> to the ODBC
> > > server, so that I can set up a mapping on the server that allows write
> > > access when a certain application string is sent.
> > >
> > > PHP 4.06 (with file-upload patch)
> > > Openlink ODBC 1.5
> > > Linux Client
> > > SCO Informix 5 server
> > >
> > >
> > > TIA-
> > >
> > > Bruce
> > >
> > >
> > >
> > >
> > > --
> > > PHP Database Mailing List (http://www.php.net/)
> > > To unsubscribe, visit: http://www.php.net/unsub.php
> > >
> > >
> > >
>
>
> --
> PHP Database Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
>



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

Reply via email to