CyberShot Posted October 20, 2009 Share Posted October 20, 2009 I have a test database set up on localhost. I have a form that I can type a name into, hit the button and it puts the name into the database and into a list on my page. it works fine. Now, I wanted to make a drop down list with all the names so that you could select one to remove that name from the database. So I did this <form> <select> <option><?php echo $name ?></option> </select> </form> What that did was list the very last name in the list. What I thought it would do was list all the names based on the loop that I have set up to read all the names from the database. which is this $mysql = new mysqli('localhost', 'myusername', 'mypass', 'mydatabase') or die('not working'); $result = $mysql->query("SELECT * FROM myTable") or die($mysql->error); if($result) { while($row = $result->fetch_object()) { $name = $row->names; echo $name . "<br />"; } } Now the while loop is in a file I called results and it is included in the index page with an include. I thought this would give me access to the $name variable and allow me to use it the same way it's being used in the loop. of course I was wrong, so how do I use it the same way? Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/ Share on other sites More sharing options...
trq Posted October 20, 2009 Share Posted October 20, 2009 Your while loop would need to make an array. $name = array(); while($row = $result->fetch_object()) { $name[] = $row->names; } Then... <form> <select> <?php foreach ($name as $n): ?> <option><?php echo $n ?></option> <?php endforeach; ?> </select> </form> Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940214 Share on other sites More sharing options...
CyberShot Posted October 20, 2009 Author Share Posted October 20, 2009 well, that worked for my drop down, but messed up the list. So I tried putting in the foreach loop and it kinda worked but is outputting to many names. Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940219 Share on other sites More sharing options...
CyberShot Posted October 20, 2009 Author Share Posted October 20, 2009 figured it out. I had to move the foreach loop out of the while loop and now it works. like this $mysql = new mysqli('localhost', 'root', 'pascal35', 'data') or die('not working'); $result = $mysql->query("SELECT * FROM myTable") or die($mysql->error); if($result) { $name = array(); while($row = $result->fetch_object()) { $name[] = $row->names; } foreach($name as $n): echo $n . "<br />"; endforeach; } is that propper coding for the foreach loop? I just copied the foreach loop that you posted above. Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940224 Share on other sites More sharing options...
trq Posted October 20, 2009 Share Posted October 20, 2009 Having the two loops like that (one after the other) doesn't really make allot of sense. Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940278 Share on other sites More sharing options...
CyberShot Posted October 20, 2009 Author Share Posted October 20, 2009 can you offer a better sollution? The code works this way. One loops returns the value for a drop down list, the other one returns the same value for a normal list. Just displays the names on the screen. Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940527 Share on other sites More sharing options...
cags Posted October 20, 2009 Share Posted October 20, 2009 while($row = $result->fetch_object()) { echo $row->names . "<br />"; } Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940577 Share on other sites More sharing options...
CyberShot Posted October 20, 2009 Author Share Posted October 20, 2009 i had that at one time. I had to change it to add the drop down Quote Link to comment https://forums.phpfreaks.com/topic/178304-solved-using-variables-in-another-page/#findComment-940629 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.