Re: PHP barfs with Win98/Oracle/Apache
| From: | Andy Hoffman | Date: | Tue, 22 Aug 2000 19:22:52 +0000 |
| Subject: | Re: PHP barfs with Win98/Oracle/Apache | ||
| References: | 1 | Groups: | php.windows |
| Request: | Send a blank email to php-windows+get-2046@lists.php.net to get a copy of this message | ||
Trussell David N wrote:
> > > I have Apache 1.3.12 on Win98 SE and Personal Oracle 8.1.5. It works
> fine
> > > up to a point. I load PHPLIB's index.php3 and the "Per Session Data"
> > > variable increments as expected. But when I click on the URL to "Load a
> > > more complex example" PHP immediately aborts with an error in Kernel32
> > > consistantly.
> >
> > A couple things... 1) what version of php do you have loaded on your
> machine?
> > php4.0.1pl2 or 4.0.2dev? 2) update your Oracle client to 8.1.6 (you don't
> > have to update all your software, just the client stuff - and it's a free
> > download) 3) what is the phplib code supposed to do? I haven't seen this
> > code, so post a snippet so we can see what it's trying to accomplish.
>
> My apologies for the sparse information. I'm using the latest download from
> www.php4win.de (php4.0.2-dev cvs: 2000-08-16). I will see about updating
> the client tonight. PHPLIB is a toolkit developed mainly for PHP3. I was
> using it to test my database connections. It can be found at
> phplib.netuse.de. Here is a snipped portion of the "offending" file:
>
> <?php
> // I use auto_prepend= in my php3.ini file to have
> // prepend.php3 in front of this file. If you don't
> // want to use this feature you have to include it
> // manually:
>
> // include("prepend.php3");
>
> // You will have to set up your include_path= in
> // php3.ini to make this work, though.
>
> // This is here to test the features of the Table class
> include($_PHPLIB["libdir"] . "table.inc");
>
> // We use the following features:
> // sess for session variables
> // auth for login checks, also required for user variables
> // perm for permission checks
> // user for user variables
> page_open(array("sess" => "Example_Session", "auth" =>
> "Example_Auth",
> "perm" => "Example_Perm", "user" =>
> "Example_User"));
>
> // page access requires that the user is authenticated and has "admin"
> permission
> $perm->check("admin");
>
> // s is a per session variable, u is a per user variable.
>
> // If they've already been loaded in from the database, leave them alone
> // Otherwise, set them to a value so we don't get PHP warnings later.
> if(!isset($s)) { $s=0; };
> if(!isset($u)) { $u=0; };
>
> $sess->register("s");
> $user->register("u");
>
> ?>
> <html>
> <head>
As the oci8 calls are new to php4, I recommend using the oci_* function calls
directly. The phplib code may be using older oracle_* function calls which
don't work with the oci8 extension. Just a note for safety :)
--
Andy Hoffman
Web Developer
Bristol-Myers Squibb
office: LVL G1.2607
email: andy.hoffman@bms.com
phone: 609-252-5788