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">';