Thread: problems when fetching array contents.
Hello, I'm having problems fetching array contents. Connection to my db is alright, the db data too. Here is the problem: I have a table named "configuration" containing Keys and Values of Constants that have to be defined in php. The code: $configuration_query = pg_query("select configuration_key as cfgKey, configuration_value as cfgValue from configuration"); while ($configuration = tep_db_fetch_array($configuration_query)) { echo $configuration['cfgKey']; $configuration['cfgValue']; // test define($configuration['cfgKey'], $configuration['cfgValue']); } The problem I have is that although it passed through the while LOOP the right number of times (= the number of entries in the table), I'm not able to print any key or value (when I test using "echo $configuration['cfgKey']..., it just writes nothing), and the php constants are therefore not defined. "configuration_key" and "configuration_value" are varchar(64) Any one knows how to handle this? I'm using postgre 7.3.2 and php 4.3.1. Thanks in advance, Best Regards. Jonas Vonlanthen
Hi > while ($configuration = tep_db_fetch_array($configuration_query)) { Why don't you use pg_fetch_array() or pg_fetch_assoc() or pg_fetch_all()? Conni
On Wed, Aug 13, 2003 at 07:24:03PM +0200, J0nEz wrote: > Hello, > > I'm having problems fetching array contents. > > Connection to my db is alright, the db data too. > > Here is the problem: > > I have a table named "configuration" containing Keys and Values of > Constants that have to be defined in php. > > The code: > > $configuration_query = pg_query("select configuration_key as cfgKey, > configuration_value as cfgValue from configuration"); > If this is your actual code, you are not passing the connection resource variable to pg_query. (see here: http://us4.php.net/manual/en/function.pg-query.php ) > while ($configuration = tep_db_fetch_array($configuration_query)) { > echo $configuration['cfgKey']; $configuration['cfgValue']; // test > define($configuration['cfgKey'], $configuration['cfgValue']); > } > I would do a pg_fetch_array, and then foreach through the array like this: $query_rows = pg_num_rows($resource_from_pg_query); for($iterator = 0; $iterator < $query_rows; $iterator++) { $my_db_array = pg_fetch_array($resource_from_pg_query) foreach ($my_db_array as $mdba_name => $mdba_value) { define("$mdba_name", "$mdba_value"); } } then a print_r(get_defined_vars) should give you your vars.. Hope this helps! Chadwick