Can't display function result

I'm trying to make a dropdownlist based on data I get from the database but I can't display them. Could someone lend me a hand?

include '../opdrachten/connectionPDO.php';

function Select()
{

$query =$db->prepare("SELECT naam FROM opdracht4");
$query->execute();

foreach ($query as $row)
{
echo '<option value="'.$row['naam'].'">"'.$row['naam'].'"</option>';    
}
} 

<select name="projectleider">   
<?php Select();  ?>
</select>

Upvotes: 0

Views: 50

Answers (2)

Edwin Alex
Edwin Alex

Reputation: 5108

You should return the values from function. Try this,

function Select()
{

  $query =$db->prepare("SELECT naam FROM opdracht4");
  $query->execute();

 $str = '<option value="">Select anyone</option>';
 foreach ($query as $row)
 {
  $str.= '<option value="'.$row['naam'].'">"'.$row['naam'].'"</option>';    
 }
 return $str;
} 

While calling try this,

<select name="projectleider">   
<?php echo Select();  ?>
</select>

Upvotes: 0

Zevi Sternlicht
Zevi Sternlicht

Reputation: 5399

Pass the $db into the function to get it in scope.

include '../opdrachten/connectionPDO.php';

function Select($db)
{

$query =$db->prepare("SELECT naam FROM opdracht4");
$query->execute();

foreach ($query as $row)
{
echo '<option value="'.$row['naam'].'">"'.$row['naam'].'"</option>';    
}
} 

<select name="projectleider">   
<?php Select();  ?>
</select>

Upvotes: 2

Related Questions