RE: DB_dataobject problems.
| From: | Daniel Testa | Date: | Thu, 14 Jul 2005 17:09:05 +0000 |
| Subject: | RE: DB_dataobject problems. | ||
| Groups: | php.pear.general | ||
| Request: | Send a blank email to pear-general+get-20010@lists.php.net to get a copy of this message | ||
Thanks for the response Alan there are not any overloaded functions. It's the plain vanilla
script compiled by the server running php 4.3.11. I ran the createTables.php to get my objects.
Could this mean the generated class files aren't loading correctly and why the find/fetches
don't work correctly? Is there anything dumb I'm doing in my script? This is the first
time I have ever used DB_dataobjects.
Daniel Justin Testa
Programmer/Analyst
dan@sbrha.org < <mailto:dan@sbrha.org>>
phone: 805-685-9525 ext 145
fax: 805-685-8292
Santa Barbara Regional Health Authority
110 Castilian Dr
Goleta, CA 93117-3028
-----Original Message-----
From: Alan Knowles [mailto:alan@akbkhome.com]
Sent: Tuesday, July 12, 2005 7:45 AM
To: Daniel Testa
Cc: pear-general@lists.php.net
Subject: Re: DB_dataobject problems.
This does look odd - have you overloaded delete or whereAdd?
$person3 = DB_DataObject::Factory('chr_characters');
$person3->whereAdd("chr_name = '%Miky%' ");
$person3->delete(DB_DATAOBJECT_WHEREADD_ONLY);
is resulting in:
dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
dataobjects_chr_characters: ERROR: delete: No condition specifed for
query
which indicates that either delete is overloaded and not passing the arg
through - or whereAdd is not setting _query['condition']
Regards
Alan
>
On Mon, 2005-07-11 at 17:00 -0700, "Daniel Testa" wrote:
> I got all my classes out generated and configure but for some strange
> reason fetches and finds are not working correctly. I can use an object
> to insert a record but not find or delete the newly created record. I'm
> am very green to php and DB_dataobjects, heres output from the script in
> question with debug set to 3.
>
>
>
> /* Script Start */
>
>
>
> <?php
>
> require_once('/home/crazyl2/include/set_env.php');
>
> // put full path to Smarty.class.php
>
> //require('smarty/Smarty.class.php');
>
> $t->assign('title', "Welcome To Crazy Like A Moose");
>
> $t->assign('name', "Vistor");
>
> $t->display('index.tpl');
>
> DB_DataObject::debugLevel(3);
>
>
>
>
>
> $person = DB_DataObject::factory('chr_characters');
>
> if ($person->get(1)) {
>
> // print_r($person);
>
> echo "<br> Character name is " . $person->chr_name .
> "<BR>";
>
> } else {
>
> echo "NO person 1 exists";
>
> }
>
>
>
>
>
> $person = DB_DataObject::factory('chr_characters');
>
> $person->chr_name = 'Frag New';
>
> $person->find();
>
> print_r($person);
>
>
>
> $person = DB_DataObject::factory('usr_users');
>
> if ($person->get(1)) {
>
> print_r($person);
>
> } else {
>
> echo "NO person 1 exists";
>
> }
>
>
>
>
>
>
>
>
>
> //$character = DB_DataObject::Factory('Chr_characters');
>
> //$character3 = DB_DataObject::Factory('DataObjects_Chr_characters');
>
>
>
> //$character->chr_id =1 ;//chr_id ;
>
> $character = DB_DataObject::Factory('chr_characters');
>
> $db= &$character->getDatabaseConnection();
>
> echo "Php type " . $db->phptype . "<br>";
>
> $character->get("chr_id","1");
>
>
>
> //print_r($character);
>
>
>
>
>
>
>
> $images = DB_DataObject::factory('chr_images');
>
> print_r($images);
>
>
>
> $person = new DataObjects_chr_characters;
>
> $number_of_rows = $person->find();
>
> echo "<br>Number of row: " . $number_of_rows . "<br>";
>
>
>
> $people = array();
>
> echo "Starting loop <br>";
>
> while ($person->fetch())
>
> { /* store the results in an array */
>
> echo "Going through all my records";
>
> echo "GOT {$person->chr_name}<BR>";
>
> }
>
>
>
> echo "ending loop <br> ";
>
>
>
> $person3 = DB_DataObject::Factory('chr_characters');
>
> $person3->chr_name='Miky';
>
> $person3->chr_page='www.deleteme.com';
>
> $id = $person3->insert();
>
>
>
> $person3 = DB_DataObject::Factory('chr_characters');
>
> $person3->whereAdd("chr_name = '%Miky%' ");
>
> $person3->delete(DB_DATAOBJECT_WHEREADD_ONLY);
>
>
>
> echo "delete called <br>";
>
>
>
> // Instantiate the DataObject_Articles class
>
> $characters= DB_DataObject::Factory('chr_characters');
>
>
>
> // Assign a value to use to search the 'Author' column
>
> //$characters->chr_id = 1;
>
>
>
> // Perform the query
>
> //
>
>
>
> echo 'Dose super dan Exist:<br />';
>
> $characters->find();
>
> // Loop through the articles
>
> while ($characters->fetch()) {
>
> echo ' - ' . $characters->chr_name . ', published: ' .
> $characters->chr_page; //date('jS M Y', $articles->published) . '<br
> />';
>
> }
>
> ?>
>
>
>
> /* Script End */
>
>
>
>
>
> /* Screen output Start */
>
> Welcome To Crazy Like a Moose
>
> Hello, Vistor!
>
> Footer
>
> dataobjects_chr_characters: CONNECT: NEW CONNECTION
> dataobjects_chr_characters: CONNECT:
> mysql://crazyl2_crazycon:a53xc56g@localhost/crazyl2_cmsite
> 1d715709138226b00653f53a686c29ea
> dataobjects_chr_characters: databaseStructure: Loaded ini file:
> /home/crazyl2/include/DataObjects/schema/crazyl2_cmsite.ini
> dataobjects_chr_characters: databaseStructure: Missing links.ini file:
> /home/crazyl2/include/DataObjects/schema/crazyl2_cmsite.links.ini
> dataobjects_chr_characters: GET: chr_id 1 Array ( [0] => chr_id )
> dataobjects_chr_characters: __find: 1
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: SELECT * FROM chr_characters WHERE
> chr_characters.chr_id = 1
> dataobjects_chr_characters: query: QUERY DONE IN 0.13059210777283
> seconds
> dataobjects_chr_characters: __find: CHECK autofetchd 1
> dataobjects_chr_characters: __find: ABOUT TO AUTOFETCH
> dataobjects_chr_characters: FETCH:
> a:3:{s:6:"chr_id";s:1:"1";s:8:"chr_name";s:11:"Dan The
> Man";s:8:"chr_page";s:37:"www.crazylikeamoose.com/dantheman.com";}
> dataobjects_chr_characters: fetchrow LINE: chr_id = 1
> dataobjects_chr_characters: fetchrow LINE: chr_name = Dan The Man
> dataobjects_chr_characters: fetchrow LINE: chr_page =
> www.crazylikeamoose.com/dantheman.com
> dataobjects_chr_characters: fetchrow: chr_characters DONE
> dataobjects_chr_characters: __find: DONE
>
> Character name is
> dataobjects_chr_characters: __find:
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: SELECT * FROM chr_characters WHERE
> chr_characters.chr_name = 'Frag New'
> dataobjects_chr_characters: query: QUERY DONE IN 0.0011179447174072
> seconds
> dataobjects_chr_characters: __find: CHECK autofetchd
> dataobjects_chr_characters: __find: DONE
> dataobjects_chr_characters Object ( [_DB_DataObject_version] =>
> @version@ [__table] => chr_characters [N] => 0 [_database_dsn] =>
> [_database_dsn_md5] => [_database] => [_query] => Array ( [condition] =>
> [group_by] => [order_by] => [having] => [limit_start] => [limit_count]
> => [data_select] => * ) [_DB_resultid] => [_link_loaded] => [_join] =>
> [_lastError] => [chr_id] => [chr_name] => Frag New [chr_page] => )
> dataobjects_usr_users: CONNECT: USING CACHED CONNECTION
> dataobjects_usr_users: GET: user_id 1 Array ( [0] => user_id )
> dataobjects_usr_users: __find: 1
> dataobjects_usr_users: CONNECT: USING CACHED CONNECTION
> dataobjects_usr_users: CONNECT: USING CACHED CONNECTION
> dataobjects_usr_users: CONNECT: USING CACHED CONNECTION
> dataobjects_usr_users: QUERY: SELECT * FROM usr_users WHERE
> usr_users.user_id = 1
> dataobjects_usr_users: query: QUERY DONE IN 0.15879821777344 seconds
> dataobjects_usr_users: __find: CHECK autofetchd 1
> dataobjects_usr_users: __find: DONE
> NO person 1 existsdataobjects_chr_characters: CONNECT: USING CACHED
> CONNECTION
> Php type mysql
> dataobjects_chr_characters: GET: chr_id 1 Array ( )
> dataobjects_chr_characters: __find: 1
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: SELECT * FROM chr_characters WHERE
> chr_characters.chr_id = 1
> dataobjects_chr_characters: query: QUERY DONE IN 0.00032711029052734
> seconds
> dataobjects_chr_characters: __find: CHECK autofetchd 1
> dataobjects_chr_characters: __find: ABOUT TO AUTOFETCH
> dataobjects_chr_characters: FETCH:
> a:3:{s:6:"chr_id";s:1:"1";s:8:"chr_name";s:11:"Dan The
> Man";s:8:"chr_page";s:37:"www.crazylikeamoose.com/dantheman.com";}
> dataobjects_chr_characters: fetchrow LINE: chr_id = 1
> dataobjects_chr_characters: fetchrow LINE: chr_name = Dan The Man
> dataobjects_chr_characters: fetchrow LINE: chr_page =
> www.crazylikeamoose.com/dantheman.com
> dataobjects_chr_characters: fetchrow: chr_characters DONE
> dataobjects_chr_characters: __find: DONE
> dataobjects_chr_images Object ( [_DB_DataObject_version] => @version@
> [__table] => chr_images [N] => 0 [_database_dsn] => [_database_dsn_md5]
> => [_database] => [_query] => Array ( [condition] => [group_by] =>
> [order_by] => [having] => [limit_start] => [limit_count] =>
> [data_select] => * ) [_DB_resultid] => [_link_loaded] => [_join] =>
> [_lastError] => [chr_id] => [image_id] => [image_type] => [rec_id] => )
> dataobjects_chr_characters: __find:
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: SELECT * FROM chr_characters
> dataobjects_chr_characters: query: QUERY DONE IN 0.00075793266296387
> seconds
> dataobjects_chr_characters: __find: CHECK autofetchd
> dataobjects_chr_characters: __find: DONE
>
> Number of row: 57
> Starting loop
> dataobjects_chr_characters: FETCH: No data returned from FIND (eg. N is
> 0)
> ending loop
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: INSERT INTO chr_characters (chr_name
> , chr_page ) VALUES ('Miky' , 'www.deleteme.com' )
> dataobjects_chr_characters: query: QUERY DONE IN 0.00085997581481934
> seconds
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: ERROR: delete: No condition specifed for
> query
> delete called
> Dose super dan Exist:
> dataobjects_chr_characters: __find:
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: CONNECT: USING CACHED CONNECTION
> dataobjects_chr_characters: QUERY: SELECT * FROM chr_characters
> dataobjects_chr_characters: query: QUERY DONE IN 0.0009009838104248
> seconds
> dataobjects_chr_characters: __find: CHECK autofetchd
> dataobjects_chr_characters: __find: DONE
> dataobjects_chr_characters: FETCH: No data returned from FIND (eg. N is
> 0)
>
> /* Screen output End */
>
>
>
>
>
> Please any help would be greatly appreciated oh mighty code gods!
>
>
>
>
>