Home arrow PHP arrow Viewing and Editing Tasks for a Project Management Application

Viewing and Editing Tasks for a Project Management Application

Welcome to the fifth part of a seven part series on building a project management application. In the last article we looked at the view_tasks.php script. Specifically, we looked at the PHP portion of the script in detail. In this article we will finish discussing that script by examining the HTML portion. We will then move on to discuss the edit_task.php script, which is responsible for handling any changes that the user makes to a task.

TABLE OF CONTENTS:
  1. Viewing and Editing Tasks for a Project Management Application
  2. The edit_task script
  3. Script Explained
  4. HTML Form
By: David Web
Rating: starstarstarstarstar / 2
June 30, 2008

print this article
SEARCH DEV SHED

TOOLS YOU CAN USE

advertisement

To create the dynamic HTML table for the view task script, PHP is going to use the $num variable that it stored in the PHP portion of the page. The table headers are:

  • Description
  • To be completed by

These headers are static and will not be affected by the dynamic aspect of the code. Let's look at how it is done:


<!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"><!-- InstanceBegin template="/Templates/PM_Main.dwt.php" codeOutsideHTMLIsLocked="false" -->

<head>

<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />

<!-- InstanceBeginEditable name="doctitle" -->

<title>Untitled Document</title>

<!-- InstanceEndEditable -->

<!-- InstanceBeginEditable name="head" -->

<!-- InstanceEndEditable -->

<link href="Templates/main.css" rel="stylesheet" type="text/css" />

</head>


<body>

<table width="100%" border="0">

<tr>

<td width="33%">&nbsp;</td>

<td width="28%">&nbsp;</td>

<td width="39%">Logged in: <!-- InstanceBeginEditable name="login" --><? echo $_SESSION['name'];?> | <a href="logout.php">Logout</a><!-- InstanceEndEditable --></td>

</tr>

<tr>

<td colspan="3" bgcolor="#6699CC" class="headertxt">Project Management Software </td>

</tr>

<tr>

<td colspan="3"><!-- InstanceBeginEditable name="main" -->

<table width="100%" border="0">

<tr>

<td colspan="2" class="loginheader"><?php echo $title;?> </td>

</tr>

<tr>

<td>&nbsp;</td>

<td>&nbsp;</td>

</tr>

<tr>

<td>Task Description: </td>

<td>To be completed by: </td>

</tr>


The dynamic rows start here. First, PHP checks to see how many table rows it will need to create:


<?php

if($num > 0){

Then it creates a while() loop that will actually create rows based on the number of results. The $num variable stores a number, so if the number is, for example, five, then the number of rows that are created will also be five. Now, as these rows are created, PHP adds the description and "complete by" dates to the table:


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

<tr>

<td><?php echo $row['task_description']?></td>

<td><?php echo $row['complete_by']?></td>

</tr>

<?php

}


If the $num variable does not contain any numbers, it means that no tasks were available for the given project. An appropriate message will be given:


}else{

?>

 

<tr>

<td colspan="2"><p>There are no tasks registered for this project.</p></td>

</tr>

<?php }

 

?>

</table>

<!-- InstanceEndEditable --></td>

</tr>

<tr>

<td colspan="3"><!-- InstanceBeginEditable name="nav" --><table width="100%" border="0">


The view tasks page has two navigation links at the bottom that take you either to the Administrator's corner or the edit tasks page. We are going to be looking at the edit tasks page in the next section:


<tr>

<td><a href="edit_task.php?pid=<?php echo $_GET['pid'];?>">Edit Task</a> | <a href="admin/login.php">Administrators Corner </a></td>

</tr>

</table><!-- InstanceEndEditable --></td>

</tr>

<tr>

<td align="right" class="cright" colspan="3">copyright &copy; 2007 PM </td>

</tr>

</table>

</body>

<!-- InstanceEnd --></html>



 
 
>>> More PHP Articles          >>> More By David Web
 

blog comments powered by Disqus
escort Bursa Bursa escort Antalya eskort
   

PHP ARTICLES

- Hackers Compromise PHP Sites to Launch Attac...
- Red Hat, Zend Form OpenShift PaaS Alliance
- PHP IDE News
- BCD, Zend Extend PHP Partnership
- PHP FAQ Highlight
- PHP Creator Didn't Set Out to Create a Langu...
- PHP Trends Revealed in Zend Study
- PHP: Best Methods for Running Scheduled Jobs
- PHP Array Functions: array_change_key_case
- PHP array_combine Function
- PHP array_chunk Function
- PHP Closures as View Helpers: Lazy-Loading F...
- Using PHP Closures as View Helpers
- PHP File and Operating System Program Execut...
- PHP: Effects of Wrapping Code in Class Const...

Developer Shed Affiliates

 


Dev Shed Tutorial Topics: