chaturvedi Posted June 10, 2009 Share Posted June 10, 2009 Hello, I have a PHP script that generates a simple csv file based on username entered. What i want to do is get the data into a horizontal line instead in column form based on the name of the project. There should be just one line per project name. please find the attachment for the same [attachment deleted by admin] Quote Link to comment Share on other sites More sharing options...
Mark Baker Posted June 10, 2009 Share Posted June 10, 2009 I don't see anything here that says what day each entry in your current file relates to, so there's nothing to say which daya column it should be in for the format that you want. Really, we need to know more about the data that you're using to generate the csv Quote Link to comment Share on other sites More sharing options...
chaturvedi Posted June 19, 2009 Author Share Posted June 19, 2009 ok here is the code that i have to generate a normal csv file... <? session_start(); include("SessionCheck.php"); include("Connection.php"); $stdt1=$_GET['sdate']; $enddt1=$_GET['edate']; $empid=$_GET['eid']; $s1="Select * from emp_master where emp_no='$empid'"; $r1=mysql_query($s1); $row=mysql_fetch_row($r1); $empnm=$row[1]; ?> <? $host = 'localhost'; $csv_terminated = "\n"; $csv_separator = ","; $csv_enclosed = '"'; $csv_escaped = "\\"; //$result = mysql_query("Select distinct emp_no, emp_name, proj_id, proj_nm from tres having proj_nm=(Select wrkhrs from tres) where emp_no='$empid' and dt>='$stdt1' and dt<='$enddt1'"); $result = mysql_query("Select distinct emp_no, emp_name, proj_id, proj_nm from tres where emp_no='$empid' and dt>='$stdt1' and dt<='$enddt1'"); $fields_cnt = mysql_num_fields($result); $schema_insert = ''; //For the headings from SQL table for ($i = 0; $i < $fields_cnt; $i++) { $l = $csv_enclosed . str_replace($csv_enclosed, $csv_escaped . $csv_enclosed, stripslashes(mysql_field_name($result, $i))) . $csv_enclosed; $schema_insert .= $l; $schema_insert .= $csv_separator; } // end for $out = trim(substr($schema_insert, 0, -1)); $out .= $csv_terminated; // Format the data while ($row = mysql_fetch_array($result)) { $schema_insert = ''; for ($j = 0; $j < $fields_cnt; $j++) { if ($row[$j] == '0' || $row[$j] != '') { if ($csv_enclosed == '') { $schema_insert .= $row[$j]; } else { $schema_insert .= $csv_enclosed . str_replace($csv_enclosed, $csv_escaped . $csv_enclosed, $row[$j]) . $csv_enclosed; } } else { $schema_insert .= ''; } if ($j < $fields_cnt - 1) { $schema_insert .= $csv_separator; } } // end for $out .= $schema_insert; $out .= $csv_terminated; } // end while $filename = $file."_".date("Y-m-d_H-i",time()); header("Content-type: application/vnd.ms-excel"); header("Content-disposition: csv" . date("Y-m-d") . ".csv"); header( "Content-disposition: filename=".$filename.".csv"); print $out; exit; now i want that if on day 3 4 and 7 i have worked in one project then the related hours should come corressponding to the project name. How do i get that? Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.