mrpatg
mrpatg

Reputation: 10117

formatting fgetcsv output

Im trying to figure out how to take the data returned by fgetcsv, and format it into a readable/editable table, and then use fputcsv to save that table

so far i have this

<?php
$row = 1;
$handle = fopen("csv.csv", "r");
while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
    $num = count($data);
    $row++;
    for ($c=0; $c < $num; $c++) {
        echo $data[$c] . "\n";
    }
}
fclose($handle);
?>

Upvotes: 1

Views: 2079

Answers (1)

Ben Reisner
Ben Reisner

Reputation: 662

The following code will output the CSV in an html table. To make it editable wrap the echo ..$val.. with tags and add a php form handler that takes the result and reforms a CSV

<?php
    $row = 1;
    $handle = fopen("csv.csv", "r");
    echo("<table>");
    while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) {
        echo("<tr>\r\n");
        foreach ($data as $index=>$val) {
            echo("\t<td>$val</td>\r\n");
        }
        echo("</tr>\r\n");
    }
    echo("</table>");
    fclose($handle);
?>

Upvotes: 2

Related Questions