atl_andy Posted December 1, 2007 Share Posted December 1, 2007 I'm trying to create a dropdown menu with information from a pgsql table. It is only returning one value from the table...can't figure out why. I think the problem is in the while loop or the foreach loop, but maybe I'm looking in the wrong place. <?php function create_dropdown($identifier,$pairs="") { // Start the dropdown list with the <select> element and title $dropdown = "<select name=manufacturer "; $dropdown .= "<option name=manufacturer>Manufacturer</option>"; // Create the dropdown elements foreach($pairs AS $value => $name) { $dropdown .= "<option name=manufacturer>$name</option>"; } // Conclude the dropdown and return it echo "</select>"; return $dropdown; } //Connect to the db server and select a database $db_handle = pg_connect('dbname=test2 user=user password=pwd'); // Retrieve the manufacturer table data $query = "SELECT record_id, manufacturer FROM dropdown ORDER BY manufacturer"; $result = pg_query($db_handle, $query); // Create an associative array based on the table data while($row = pg_fetch_array($result)) { $value = $row['record_id']; $name = $row['manufacturer']; $pairs['$value'] = $name; } echo "Manufacturer: "; echo create_dropdown("dropdown",$pairs,"Select Manufacturer"); ?> Quote Link to comment Share on other sites More sharing options...
koen Posted December 1, 2007 Share Posted December 1, 2007 $pairs['$value'] = $name; I think that should be: $pairs[$value] = $name; Quote Link to comment Share on other sites More sharing options...
atl_andy Posted December 1, 2007 Author Share Posted December 1, 2007 That did it. Figured it would be that simple. Thanks for the help. Quote Link to comment Share on other sites More sharing options...
revraz Posted December 1, 2007 Share Posted December 1, 2007 You may want to add a > after your <select tag too. Quote Link to comment Share on other sites More sharing options...
atl_andy Posted December 1, 2007 Author Share Posted December 1, 2007 Thanks for noticing that as well....added. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.