2015-03-16 2 views
0
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. Но вывод: запрос пуст. Что не так с кодом? Я опускаю коды, которые не имеют значения. , пожалуйста, дайте мне совет.Почему его вывод: запрос пуст

ProjectID не передан правильно. И следующее - это прохождение кода. Не могли бы вы помочь мне выяснить ошибку?

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>"; 
+1

Do не использовать устаревший API 'mysql_ * '. Используйте 'mysqli_ *' или 'PDO'. – Jens

+0

Попробуйте выполнить эхо запроса и запустить его в консоли mysql. – Jens

+2

Вы должны обернуть все в свой первый оператор 'if', поскольку код не имеет смысла за его пределами. – jeroen

ответ

0

Попробуйте включить ваш запрос выполнить сразу после установки строки запроса:

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

Я пробовал его '$ _GET [\' projectID \ '] не установлен!'; Таким образом, идентификатор проекта не был принят правильно. – user2999284

+0

, а какой url вы вызываете, чтобы получить эту страницу в браузере? – Alex

+0

Это локальный хост отдела cs – user2999284

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