Viewing and Editing Tasks for a Project Management Application - The edit_task script
(Page 2 of 4 )
The edit_task.php script is responsible for updating the tasks table whenever you make any changes to a task. Its main role is to display an HTML form that contains the information about the task you want to change and then sends that information to the database. Below is a screen shot of the edit_task.php page:
And here's the code for the entire script:
<?php
include "dbcon.php";
include "functions.php";
$cpid=mysql_escape_String($_GET['pid']);
$tpid=mysql_escape_String($_GET['tid']);
$getname = "SELECT title FROM projects WHERE pid = '".$cpid."'";
$g_result = mysql_query($getname);
if(!$g_result){
echo mysql_error();
}else{
$rowname = mysql_fetch_assoc($g_result);
$title = $rowname['title'];
}
$gettask= "SELECT * FROM tasks WHERE tid = '".$ctid."'";
$t_result = mysql_query($gettask);
if(!$t_result){
echo mysql_error();
}else{
$rowtask = mysql_fetch_assoc($t_result);
}
if(isset($_POST['submit'])){
//check vars
$descr=mysql_escape_string($_POST['descr']);
$p_pid=mysql_escape_string($_POST['p_pid']);
//build date
$duedt = $_POST['yy'] . "-";
if($_POST['mm'] < 10) {
$duedt .= "0";
}
$duedt .= $_POST['mm'] . "-";
if($_POST['mm'] == 4 || $_POST['mm'] == 6 || $_POST['mm'] == 9 || $_POST['mm'] == 11) {
if($_POST['dd'] > 30) {
$duedt .= "30";
} else {
$duedt .= $_POST['dd'];
}
} elseif($_POST['mm'] == 2) {
if($_POST['yy'] == 2008 || $_POST['yy'] == 2012) {
if($_POST['dd'] > 29) {
$duedt .= "29";
} else {
$duedt .= $_POST['dd'];
}
} else {
if($_POST['dd'] > 28) {
$duedt .= "28";
} else {
$duedt .= $_POST['dd'];
}
}
} else {
$duedt .= $_POST['dd'];
}
//insert
$insert = "INSERT INTO tasks SET task_description = '".$descr."',";
$insert .= "complete_by = '".$duedt."',p_id= '".$p_pid."'";
if(!mysql_query($insert)){
echo mysql_error();
}
}
?>
<!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%"> </td>
<td width="28%"> </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" -->
<form id="form1" name="form1" method="post" action="edit_task.php">
<table width="100%" border="0">
<tr>
<td colspan="2" class="loginheader"><?php echo $title;?></td>
</tr>
<tr>
<td width="14%"> </td>
<td width="86%"> </td>
</tr>
<tr>
<td valign="top">Description</td>
<td><label>
<textarea name="descr"><?php echo $rowtask['task_description'];?></textarea>
</label></td>
</tr>
<tr>
<td valign="top">Complete by: </td>
<td><label>
<?
$dd = date("d");
$mm = date("m");
$yy = date("Y");
echo "<select name="dd">n";
for($i = 1; $i <= 31; $i++) {
echo "<option value="" . $i . """;
if($i == $dd) {
echo " selected";
}
echo ">" . $i . "</option>n";
}
echo "</select> <select name="mm">n";
for($i = 1; $i <= 12; $i++) {
echo "<option value="" . $i . """;
if($i == $mm) {
echo " selected";
}
echo ">" . $month_names[$i] . "</option>n";
}
echo "</select> <select name="yy">n";
for($i = $yy; $i <= ($yy + 1); $i++) {
echo "<option value="" . $i . """;
if($i == $yy) {
echo " selected";
}
echo ">" . $i . "</option>n";
}
echo "</select>";
?>
</label>
<input name="p_pid" type="hidden" value="<?php echo $_GET['pid']?>" /></td>
</tr>
<tr>
<td> </td>
<td><label>
<input name="submit" type="submit" id="submit" value="Update Task" />
</label></td>
</tr>
</table>
</form>
<!-- InstanceEndEditable --></td>
</tr>
<tr>
<td colspan="3"><!-- InstanceBeginEditable name="nav" --><table width="100%" border="0">
<tr>
<td><a href="main.php">View Project List</a> | <a href="admin/login.php">Administrators Corner </a></td>
</tr>
</table><!-- InstanceEndEditable --></td>
</tr>
<tr>
<td align="right" class="cright" colspan="3">copyright © 2007 PM </td>
</tr>
</table>
</body>
<!-- InstanceEnd --></html>
Next: Script Explained >>
More PHP Articles
More By David Web