依赖下拉PHP

时间:2011-01-17 15:12:47

标签: php

您好我想显示一个包含mysql表中所有值的表,但取决于我将从下拉菜单中选择的值。例如,下拉列表菜单具有名为open的值。我只想查看表中具有该状态的行。我需要使用Ajax吗?

这是我的代码?

$status = $_POST['TipoStatus'];
echo '<a href = "rnservices.php">  Create Service</a> ';
echo '</br>';
echo '</tr><tr><td><label for="TipoStatus"> Status:</label></td><td>';
$query = "SELECT TipoStatus FROM status"; // First Remar
         $result = queryMysql($query);

            if (!queryMysql($query)) {
    echo "Query fail: $query<br />" .
            mysql_error() . "<br /><br />";
                            }
    else
{
echo '<select name = "TipoStatus" size = "1">'; // or name="toinsert[]"
// echo '<option value="none" selected="selected">None</option>';
while ($row_1 = mysql_fetch_array($result)) {
  echo '<option value="' . htmlspecialchars($row_1['TipoStatus']) . ' selected="$row_1[9]" >' // Third remark

  . htmlspecialchars($row_1['TipoStatus'])
  . '</option>';

}
echo '</select>';
echo '</p>';
}    

echo '<table border="1" >';    
echo '<tr>';    
echo '</br>';
echo '<th> Service ID</th>';
echo '<th>Title</th>';
echo '<th>Description</th>';
echo '<th>Notes</th>';
echo '<th>Submit By</th>';
echo '<th>Assigned Employee</th>';
echo '<th>Assigned Group</th>';
echo '<th>Category</th>';
echo '<th>Status</th>';
echo '<th>Urgency</th>';
echo '<th>Customer</th>';
echo '<th>Day Created</th>';
echo '</tr>';

$query = ("SELECT ServiceID, Title, Description, Notes, SubmitBy, AssignedEmp, " .
"AssignedGroup, NameCategory, TipoStatus, TiposUrgencia, CustomerName, DayCreation FROM Service where TipoStatus = '$status'  ");
$result = queryMysql($query);
echo 'resultado' . mysql_num_rows($result);


while ($row = mysql_fetch_assoc($result)) {

    echo '<tr>';

    echo '<td><a href="rnservices1.php?ServiceID='.$row["ServiceID"].'"> '.$row['ServiceID'] .' </a></td>';
    echo '<td>' .$row['Title']. ' </td>';
    echo '<td>'.$row['Description'].'</td>';
    echo '<td>'.$row['Notes'].'</td>';
    echo '<td>'.$row['SubmitBy'].'</td>';
    echo '<td>'.$row['AssignedEmp'].'</td>';
    echo '<td>'.$row['AssignedGroup'].'</td>';
    echo '<td>'.$row['NameCategory'].'</td>';
    echo '<td>'.$row['TipoStatus'].'</td>';
    echo '<td>'.$row['TiposUrgencia'].'</td>';
    echo '<td>'.$row['CustomerName'].'</td>';
    echo '<td>'.$row['DayCreation'].'</td>';

    echo '</tr>';
}

mysqli_free_result($result);


echo $ticket_select;`enter code here`

echo '</table>';
echo '<form method = "post" action "rnseetickets.php">';
 ?>

2 个答案:

答案 0 :(得分:0)

您的代码有点蜿蜒,我无法确定您是从命令行还是作为网页运行此代码,但似乎您希望使用drop-filter过滤SQL结果期权下降?这可以通过简单的表单(如果您不介意页面刷新)或使用AJAX(如果您希望在没有页面刷新的情况下进行过滤)来完成:

// Run SQL
$sql = "SELECT TipoStatus FROM status";
if (!empty($_GET['status'])) {
    $sql .= "WHERE `value`=\"".addslashes($_GET['status'])."\"";
}
$result = queryMysql($sql);

// Filter form
echo "<form action=\"".$_SERVER['PHP_SELF']."\" method="get">";
echo "<select name=\"status\"><option>open</option><option>other option</option></select>";
echo "<input type=\"submit\" value=\"Filter\">";
echo "</form>";

// Table
// As you already have it

答案 1 :(得分:0)

问候。您可以在下拉框的onchange事件中提交论坛。

检查此链接: javascript onchange submit

您可以通过搜索“javascript onchange submit”

找到更多示例

现在,当用户在下拉框中选择某些内容时,表单将提交,您可以使用您的PHP代码来过滤结果。