2014-10-01 2 views
0

두 가지 기능을 모두 Mysqli 입력을 기반으로 드롭 다운 메뉴를 만듭니다.두 개의 드롭 다운 메뉴, 하나만 표시

ifself에 의해 각각의 잘 작동하지만이 같은 다른 페이지에서 둘 다 호출 할 때 :

populerOevelserdropdown(); 
populerAntalreps(); 

하나는 (첫 번째 표시 - 두 번째는하지만, 소스보기에 표시됩니다)

I하지만, 이렇게 부르는 경우 I)이 소스보기 각

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, 본문을 두 번 인쇄 할 수 없습니다. 그것에 대해 한 번만 생각하십시오. –

답변

0

select 상자가 제대로 닫히지 않았습니다. 심지어 닫혀 있지 않은 <html> <body> <form> 태그를 사용하고 있습니다. 이처럼 당신의 기능에서 당신은 HTML과 신체 마크 업을 추출해야이

<?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

완벽하게 작동합니다. 감사합니다. Ram - 당신은 모든 (현재 성가신) HTML을 제거 할 수있었습니다. :) –

0

... 과 같은 코드 변경 :

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();

관련 문제