[eluser]shailendra[/eluser]
I want to display various project categories and no. of projects posted for each catgory. For example
Web & Programming(2)
-PHP(1)
-ASP(1)
Graphic Designing(2)
-Logo(2)
-Website Design(0)
I did this in php using following code. How do I do this in codeigniter?
Code:
<?php
$category_details_model = new CategoryDetailsModel();
$category_details_array = array();
$category_details_array= $category_details_model->displayparentcategory(0);
for($i=0;$i<count($category_details_array);$i++) {
if(($category_details_model->noofactiveprojects($category_details_array[$i]->category_id,'public'))){
?>
<tr>
<td height="20"> - <a >category_id?>"><?php echo $category_details_array[$i]->category_name ?></a>(<?php echo $category_details_model->noofactiveprojects($category_details_array[$i]->category_id,'public') ?>)</a></td>
</tr>
<?php
}
}
?>
Function to list all parent category
Code:
/* Function to list all parent category*/
public function displayparentcategory($parent_id){
$query=sprintf("select category_id,category_name from category where parent_id=%d and active='y' order by category_name asc;",
mysql_real_escape_string($parent_id));
//echo $query;
$category_array = array();
$result = mysql_query($query);
$num_rows = mysql_num_rows($result);
if($num_rows!=0) {
while ($row = mysql_fetch_assoc($result)) {
$category_details = new CategoryDetails;
$category_details->category_id = $row['category_id'];
$category_details->category_name = $row['category_name'];
//echo $category_details->category_name;
$category_details->parent_id = $row['parent_id'];
//echo $bid_details->proj_name;
$category_details->date_time = $row['date_time'];
//echo $bid_details->proj_name;
$category_array[]=$category_details;
}
return $category_array;
} else {
return NULL;
}
}
Display all projects in a parent category
Code:
//Display all projects in a parent category
public function noofactiveprojects($category_id,$visibility){
$query1= sprintf("select category_id from category where parent_id=%d;",mysql_real_escape_string($category_id));
//echo $query1 ."\n";
$result1 = mysql_query($query1);
$total_num_proj=0;
while($row1 = mysql_fetch_array($result1)){
$category_id=$row1['category_id'];
if($visibility=="all"){
$query2= sprintf("select * from projects where category_id=%d and status='open';",
mysql_real_escape_string($category_id));
}
else{
$query2= sprintf("select * from projects where category_id=%d and status='open' and job_visibility='%s';",
mysql_real_escape_string($category_id),
mysql_real_escape_string($visibility));
}
//echo $query2;
$result2=mysql_query($query2);
$num_proj=1;
while($row2=mysql_fetch_array($result2)){
$projectposteddate=date('d-m-Y',strtotime($row2['date_time']));
$noofdays="+".$row2['job_display_days']." day";
$displayenddate=strtotime ( $noofdays,strtotime($projectposteddate));
//echo "displayenddate ".date('d-m-Y',$displayenddate);
$todaysdate=date("d-m-Y");
$difference=$displayenddate-strtotime($todaysdate);
$daysleft=round($difference / 86400);
if($daysleft>0){
$total_num_proj=$total_num_proj+$num_proj;
}
}
}
return $total_num_proj;
}