2013-03-08 7 views
0

У меня есть этот PHP код с помощью выпадающего вытягивать информацию из базы данных, но не могу показаться, чтобы выяснить, как получить выпадающий выбор для сортировки списка ...Сделать выпадающий список сортировки

Выпадающие показывают название курса в качестве метки, но при выборе необходимо отсортировать список по идентификатору курса.

Visit Here to see the table in action

<?php 
     $connect = mysql_connect('localhost','emscompl_paramed','PASSOWRD) or die(mysql_error()); 

     $selectdb = mysql_select_db('emscompl_joom1283',$connect); 

     $sel = "SELECT us.fullname, s . * 
FROM registered_users AS `us` 
LEFT OUTER JOIN course_students AS s ON s.userid = us.userid"; 
     $ressel = mysql_query($sel); 

     $fetchsel = mysql_fetch_array($ressel); 

     ?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> 
<title>Untitled Document</title> 
<style type="text/css"> 
.titiel { 
    font-weight: bold; 
} 

td { 
    border-right-width: thin; 
    border-bottom-width: thin; 
    border-right-style: dotted; 
    border-bottom-style: solid; 
    text-align:center; 
} 
th { 
     background-color:#000000; 
     color: #FFF; 
    } 
    tr:nth-child(odd) { background-color:#eee; } 
tr:nth-child(even) { background-color:#fff; } 
</style> 
</head> 

<body> 
<p class="titiel">Pre-Entrance Document Report</p> 
<p> Please Select Course for Report</p> 
    <form method="post" action="preentrancereportsorted.php"> 
     <label for="select"><select name="course" value="Select" size="1"> 
    <?php 
    $sql = "SELECT * FROM courses"; 
    $result = mysql_query($sql) or die (mysql_error()); 
     while ($row = mysql_fetch_array($result)) 
     { 
      $id=$row["id"]; 
       $course=$row["coursename"]; 
       $options.="<OPTION VALUE=\"$id\">".$course; 
     } 
     ?> 
      <option> 
       <? echo $options ?> 
       </option> 
      </select> 
      <input type="submit" name="Submit" value="Generate Report"> 
    </form> 
<table width="1246" height="56"> 
    <tr> 
    <th width="147" height="50">Student Name</td> 
    <th width="15">R</th> 
    <th width="18">M</th> 
    <th width="18">L</th> 
    <th width="81">Background</th> 
    <th width="83">Drug Screen</th> 
    <th width="112">Clear Background</th> 
    <th width="113">Clean Drug Screen</th> 
    <th width="97">Student Info</th> 
    <th width="88">School App</th> 
    <th width="117">Professional Recomendation</th> 
    <th width="119">Reasonable Accomadations</th> 
    <th width="59">Drivers Licesnse</th> 
    <th width="91">High School Diploma</th> 
    </tr> 
<?php while ($row = mysql_fetch_array($ressel)) { ?> 
    <td width="146" height="50"><?php echo $row['fullname'];?></td> 
    <td width="17"><?php echo $row['entrancereadingscore'];?></td> 
    <td width="17"><?php echo $row['mathscore'];?></th> 
    <td width="17"><?php echo $row['locatinginfoscore'];?></td> 
    <td width="84"> <?php echo $row['backcalc'];?></td> 
    <td width="79"><?php echo $row['drugcalc'];?></td> 
    <td width="113"><?php if ($row['clearbackground']='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "no"; 
    } 
    ?></td> 
    <td width="114"> 
    <?php if ($row['cleardrugtest']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="96"> 
    <?php if ($row['studentinformationsheet']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="89"> 
    <?php if ($row['schoolapplication']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="118"> 
    <?php if ($row['professionalreco']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="119"> 
    <?php if ($row['reasonableaccom']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="58"> 
    <?php if ($row['driverlicesnce']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    <td width="91"> 
    <?php if ($row['highschooldip']=='1') 
    { 
     echo "Yes"; 
    } 
    else 
    { 
     echo "No"; 
    } 
    ?> 
    </td> 
    </tr> 
    <?php } ?> 
</table> 
</body> 
</html> 

ответ

0

Если вы хотите, чтобы отсортировать поле выбора по идентификатору, то обязательно использовать "ORDER BY", как Pachonk говорит выше.

Кроме того, я заметил, что ваш PHP ниже:

  <option> 
      <? echo $options ?> 
     </option> 

выводит:

<option> 
<option value="Some id">some text 
<option value="some other id">some other text 
... repeat for all options 
</option> 

Вы должны удалить первый из вокруг PHP (вы размещаете тег в PHP эхо заявление в любом случае) и поместить тег в коде PHP выше, так что каждый имеет

как:

$result = mysql_query($sql) or die (mysql_error()); 
    while ($row = mysql_fetch_array($result)) 
    { 
     $id=$row["id"]; 
      $course=$row["coursename"]; 
      $options.="<OPTION VALUE=\"$id\">".$course . "</option>"; 
                 ^^^^^^^^^^^^^ added these 
    } 
    ?> 

      // removed <option> 
      <? echo $options ?> 
      // removed </option> 
      </select> 

Конечно, вы могли бы просто указать php в предложении while, и вы также можете указать свой вариант.

Надеюсь, что это поможет в некотором роде.

+0

Хорошо, я внес изменения, которые вы рекомендовали ... (очень ценится) ... Однако мне любопытно, как я могу сохранить выбранное значение, чтобы отсортировать таблицу под выпадающим списком ... т.е. .. Если курсы в январе 2013 года AEMT был выбран, потому что мне нужны только студенты из этого класса, чтобы показать их в таблице ... Я хотел бы сделать это с помощью «id» класса –

+0

Привет, Joshua. Сам тег

Смежные вопросы