Re: DB_DataObject not creating tables

From: Date: Wed, 19 Jan 2005 08:21:04 +0000
Subject: Re: DB_DataObject not creating tables
References: 1 2 3 4 5  Groups: php.pear.general 
Request: Send a blank email to pear-general+get-17012@lists.php.net to get a copy of this message
On Wed, 19 Jan 2005 01:01:17 -0600, Larry Garfield <larry@garfieldtech.com> wrote: > Well, I tried adding that line to createTables.php, and it still didn't > work but with a new error. So I tried downgrading to PHP 4.3.9, and I'm > getting the exact same error as under 4.3.10. Specifically, I now get > the error below. The third block repeats for every class that it would > be creating, were it working. > > I presume that the problem is it can't write to a directory called -1 > (duh), and that it's getting the -1 from an error return value > somewhere. Beyond that, though, I'm not sure how to fix it. Any > suggestions? Where'd you put that define? It has to be before the require. You sure it's spelt right? I tend to mistype that define name... :-( > > -------------------------------- > > $ php4 createTables.php ../../../db_dataobject.ini > > db_dataobject_generator : 0 : CREATING FOR gmdarchive > > db_dataobject_generator : 0 : calling generatedefinitions > db_dataobject_generator : 0 : Generating Definitions file: > > Warning: Console_Getopt: unrecognized option -- 1 in > /usr/share/php/System.php on line 88 > db_dataobject_generator : 0 : Writing ini as -1/gmdarchive.ini > > Warning: touch(): Unable to create file -1/gmdarchive.ini because No > such file or directory in /usr/share/php/DB/DataObject/Generator.php on > line 248 > > Warning: fopen(-1/gmdarchive.ini): failed to open stream: No such file > or directory in /usr/share/php/DB/DataObject/Generator.php on line 250 > > Warning: fwrite(): supplied argument is not a valid stream resource in > /usr/share/php/DB/DataObject/Generator.php on line 251 > > Warning: fclose(): supplied argument is not a valid stream resource in > /usr/share/php/DB/DataObject/Generator.php on line 252 > db_dataobject_generator : 0 : calling generateclasses > > Warning: Console_Getopt: unrecognized option -- 1 in > /usr/share/php/System.php on line 88 > db_dataobject_generator : 0 : writing DataObjects_Fleets > > Warning: fopen(-1/Fleets.php): failed to open stream: No such file or > directory in /usr/share/php/DB/DataObject/Generator.php on line 464 > > Warning: fputs(): supplied argument is not a valid stream resource in > /usr/share/php/DB/DataObject/Generator.php on line 465 > > Warning: fclose(): supplied argument is not a valid stream resource in > /usr/share/php/DB/DataObject/Generator.php on line 466 > db_dataobject_generator : 0 : writing DataObjects_GM_Classifications > > -------------------------------- > > Justin Patrin wrote: > > On Tue, 18 Jan 2005 03:55:38 -0600, Larry Garfield > > <larry@garfieldtech.com> wrote: > > > >>Oh joy.... Does it affect only the createTables.php script, or will I > >>need to add that to any script that uses DB_DataObject subsequently? > > > > > > I always turn off overloading. It 1) breaks PHP 4.3.10, 2) has been > > known to cause crashes, and 3) (most important) breaks > > pass-by-reference in functions unless you use > > call-time-pass-by-reference in PHP4. This last is very very annoying > > and hard to track. I suggest turning off overloading in all of your > > DB_DataObject use. > > > > > >>Trevan wrote: > >> > >>>PHP 4.3.10 has a problem with this. You might try adding adding > >>>define('DB_DATAOBJECT_NO_OVERLOAD',1); to the top, since that has helped > >>>some people, but for me, I had to change PHP back to 4.3.9, or get the > >>>latest snapshot for it to work. > >>> > >>>Trevan > >>> > >>>Larry Garfield wrote: > >>> > >>> > >>>>Greetings, all. I'm trying out DB_DatObject for the first time. > >>>>I've > >>>>read through the docs and followed the instructions listed, but > >>>>running into a problem. Specifically, when I try to run > >>>>createTables.php I get a function error. > >>>> > >>>> From the PEAR/DB/DataObject directory: > >>>> > >>>>$ php4 createTables.php ../../../db_dataobject.ini > >>>>db_dataobject_generator : 0 : CREATING FOR gmdarchive > >>>> > >>>>db_dataobject_generator : 0 : calling generatedefinitions > >>>> > >>>>Fatal error: Call to a member function on a non-object in > >>>>/usr/share/php/DB/DataObject/Generator.php on line 132 > >>>> > >>>>I checked, and line 132 of Generator.php is just a }. Thoughts on > >>>>what the problem could be? > >>>> > >>>>PHP Version: 4.3.10 > >>>>OS: Linux 2.6.10 > >>>>DB_DataObject version: 1.7.2 > >>>> > >>>>Any help greatly appreciated. > > -- Justin Patrin

« previous php.pear.general (#17012) next »