2014-10-01 33 views
0

我有兩個函數都創建一個基於Mysqli輸入的下拉菜單。兩個下拉菜單,只顯示一個

通過ifself每個工作很好,但是當我把他們都來自不同的頁面是這樣的:

populerOevelserdropdown(); 
populerAntalreps(); 

只有一個顯示(第一個 - 第二個是顯示了在查看源代碼,但)

然而如果我稱這樣的,:

populerOevelserdropdown(); 
populerOevelserdropdown(); 
populerAntalreps(); 

每個中的一個被正確顯示(第三個仍然顯示時,我認爲源)

我敢肯定,它有與標籤不匹配(HTML,表格等)做的,但我似乎不能正確地排列起來......

希望你們能幫 - 以下是這兩個功能:

require_once 'forbindtilDB.php'; 

function populerOevelserdropdown() 
{ 
    global $mysqliOOP; 
    $stmt = $mysqliOOP->prepare("SELECT DISTINCT primaer FROM oevelser ORDER BY primaer ASC"); 

    ?> 
    <html> 
<body> 
<form> 
    <select multiple> 
    <option value="0">Vælg ønskede øvelse(r)</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($primaereMuskelgruppe); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $primaereMuskelgruppe;?>" > 
       <?php echo $primaereMuskelgruppe; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
} 
function populerAntalreps() 
{ 
    global $mysqliOOP; 
    $stmt = $mysqliOOP->prepare("SELECT antalreps FROM antalreps ORDER BY antalreps ASC"); 

    ?> 
    <html> 
<body> 
<form> 
    <select> 
    <option value="0">Vælg ønskede antal gentagelser</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($antalreps); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $antalreps;?>" > 
       <?php echo $antalreps; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
} 
+0

您不能打印html,body兩次。想想只有一次它的方法 – 2014-10-01 09:55:12

回答

0

您沒有正確關閉select框。即使您正在使用<html> <body> <form>未關閉的標籤。改變你像這樣的代碼

<?php 
    function populerOevelserdropdown() 
    { 
     global $mysqliOOP; 
     $stmt = $mysqliOOP->prepare("SELECT DISTINCT primaer FROM oevelser ORDER BY primaer ASC"); 

     ?> 

    <select multiple> 
    <option value="0">Vælg ønskede øvelse(r)</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($primaereMuskelgruppe); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $primaereMuskelgruppe;?>" > 
       <?php echo $primaereMuskelgruppe; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
      ?>    
    </select> 
<?php  
} 

function populerAntalreps() 
{ 
    global $mysqliOOP; 
    $stmt = $mysqliOOP->prepare("SELECT antalreps FROM antalreps ORDER BY antalreps ASC"); 

    ?> 
    <select> 
    <option value="0">Vælg ønskede antal gentagelser</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($antalreps); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $antalreps;?>" > 
       <?php echo $antalreps; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
     ?>  
    </select>  
<?php } ?> 
+0

它完美的工作,謝謝拉姆 - 你設法擺脫了所有(目前麻煩)的HTML :) – 2014-10-01 10:57:29

0

你應該提取html和body標記從功能...... 像這樣:

function populerOevelserdropdown() 
{ 
    global $mysqliOOP; 
    $stmt = $mysqliOOP->prepare("SELECT DISTINCT primaer FROM oevelser ORDER BY primaer ASC"); 

    ?> 

<form> 
    <select multiple> 
    <option value="0">Vælg ønskede øvelse(r)</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($primaereMuskelgruppe); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $primaereMuskelgruppe;?>" > 
       <?php echo $primaereMuskelgruppe; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
} 
function populerAntalreps() 
{ 
    global $mysqliOOP; 
    $stmt = $mysqliOOP->prepare("SELECT antalreps FROM antalreps ORDER BY antalreps ASC"); 

    ?> 
    <html> 
<body> 
<form> 
    <select> 
    <option value="0">Vælg ønskede antal gentagelser</option> 
     <?php 
      $stmt->execute(); 
      $stmt->bind_result($antalreps); 
      while ($stmt->fetch()) 
      { 
     ?> 
      <option value = "<?php echo $antalreps;?>" > 
       <?php echo $antalreps; 
       ?> 
      </option> 
      <?php 
      } 
      $stmt->close(); 
} 
?> 
<html> 
    <body> 
<? 
    populerOevelserdropdown(); 
    populerOevelserdropdown(); 
    populerAntalreps(); 
?> 
    </body> 
</html>  
0

我想你已經錯過關閉您的選擇框。只需</select>$stmt->close();

相關問題