2016-07-27 7 views
0

Ich entwickle eine einfache Anwendung, die Mitarbeiter einfügen, ändern und löschen können.PHP Dropdown laden Daten von DB

Das Problem, das ich habe, ist mit der Person bearbeiten Seite. Hier habe ich einige Texteingaben und einige Dropdowns.

Wenn ich die Personendetails bearbeite, lade ich Daten aus der Datenbank und zeige sie in den entsprechenden Feldern an.

Das Problem mit dem Aufklappmenü ist die Abfrage, die die Person Details enthält, enthält Daten nur für diese Person, wo, wie für die Stadt vielleicht, ich brauchen würde, alle Städte von der DB zu laden, hier ein Beispiel:

<?php 
if ($result2->num_rows > 0) { 
    // output data of each row 
    while($row = $result2->fetch_assoc()) { 
      echo "<div class='form-group'> 
        <label>Name</label> 
        <input class='form-control' value='". $row["Name"] . "'> 
       </div> 
       <div class='form-group'> 
        <label>email</label> 
        <input class='form-control' value='". $row["email"] . "'> 
       </div> 
       <div class='form-group'> 
        <label>City</label> 
        <select class='form-control'> 
         <option selected>". $row["City"] . "</option> 
         <option>New York</option> 
         <option>Boston</option> 
         <option>San Francisco</option> 
        </select> 
       </div>"; 
     } 
    } 
?> 

im „während“ I Schleife $ result2, die eine Abfrage wie folgt enthält:

Select name, email, city from emp where id = 100; 

Wenn ich die Person Details aus der App bearbeiten, die Stadt Dropdown die richtige Stadt laden, aber ich würde Ich muss alle Städte laden (die ich nicht in $ result2 habe) um es ändern zu können.

Wäre wie eine verschachtelte Schleife, aber ich bin mir nicht sicher, wie Sie es implementieren.

Jede Hilfe willkommen

Danke

+0

Sie meinen, Sie eine weitere Abfrage müssen alle Städte zu bekommen? –

+0

Warum benutzen Sie nicht einfach das select selbst, um alle anderen Städte auszugeben? Es scheint, als ob du die anderen hart codierst. –

+0

@Denis Ich denke, aber ich bin mir nicht sicher, wie man es implementiert. Sollte ein anderes PHP-Tag außerhalb dieses einen haben und eine andere Variable loopen, die alle Städte enthält? – ChrisA

Antwort

0

Sie haben Ihre Städte gespeichert in einem Array $ Städten Unter der Annahme,

<?php 
if ($result2->num_rows > 0) { 
    // output data of each row 
    while($row = $result2->fetch_assoc()) { 
      echo "<div class='form-group'> 
        <label>Name</label> 
        <input class='form-control' value='". $row["Name"] . "'> 
       </div> 
       <div class='form-group'> 
        <label>email</label> 
        <input class='form-control' value='". $row["email"] . "'> 
       </div> 
       <div class='form-group'> 
        <label>City</label> 
        <select class='form-control'>"; 
         foreach($cities as $city){ 
          echo "<option".(($city == $row["City"])?" selected":"").">". $city ."</option>"; 
         } 
        echo "</select> 
       </div>"; 
     } 
    } 
?> 
+0

Yeahhh. Danke Denis Also mein Fehler war, dass ich doppelte Anführungszeichen nach