输出原因:查询为空


why it output: the query is empty

mysql_select_db($database) or die( "Unable to select database");
if (isset($_GET['projectID']))
{
    $query = "SELECT taskID, name, startDate, endDate
              FROM Task
              WHERE projectID =" . $_GET['projectID'] . "
              ORDER BY taskID ASC";
} 
$result = mysql_query($query) or die( "Unable to execute query:".mysql_error());
echo "<!DOCTYPE html><html>";
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    echo "<tr>";
    echo "<td>";
    echo "<a href='q7.php?projectID=" . $_GET['projectID'] . '&taskID=' . $row['taskID'] . "'>";
    echo "</td>";
    echo "<td>".$row['name']."</td>";
    echo "<td>".$row['startDate']."</td>";
    echo "<td>".$row['endDate']."</td>";
    echo "</tr>";
}

我正在尝试输出项目ID的信息,该信息是从另一个PHP获得的。但输出是:查询为空。代码有什么问题?我省略了无关紧要的代码。请给我一些建议。

项目 ID 未正确传入。以下是传入代码。你能帮我找出错误吗?

echo "<form method='GET' action='q6.php'>";
echo "ProjectIDs and names:";
echo "<select>";

while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
    echo "<option value='".$row['projectID']."' width='150'>";
    echo $row['projectID'].": ".$row['name'];
    echo "</option>";
}
echo "</select>";

echo "<input type='submit' name='submit' value='submit'>";
echo "</form>";

尝试在设置查询字符串后立即包含查询执行:

echo "<!DOCTYPE html><html>";
if (isset($_GET['projectID']))
{
    mysql_select_db($database) or die( "Unable to select database");
    $query = "SELECT taskID, name, startDate, endDate
              FROM Task
              WHERE projectID =" . $_GET['projectID'] . "
              ORDER BY taskID ASC";
    $result = mysql_query($query) or die( "Unable to execute query:".mysql_error());
    while($row = mysql_fetch_array($result, MYSQL_ASSOC))
    {
      echo "<tr>";
      echo "<td>";
      echo "<a href='q7.php?projectID=" . $_GET['projectID'] . '&taskID=' . $row['taskID'] . "'>";
      echo "</td>";
      echo "<td>".$row['name']."</td>";
      echo "<td>".$row['startDate']."</td>";
      echo "<td>".$row['endDate']."</td>";
      echo "</tr>";
    }
} else {
    echo '$_GET[''projectID''] is not set!';
    echo '$_GET = ';
    var_dump($_GET);
}

因此,当您生成表单时,您应该为选择设置一个名称:

echo '<select name = "projectID">';