semperfi Posted November 15, 2010 Share Posted November 15, 2010 Hi can anybody help I need to export and download tables from a database into a excel sheet. I have this code and it works what I need is to export specific fields and not just the whole table can anyone help modifying the code to export certain fields within the table please? Here is the code... <?php $host = 'localhost'; $user = 'user'; $pass = 'password'; $db = 'qdbname'; $table = 'tablename'; $file = 'export'; $link = mysql_connect($host, $user, $pass) or die("Can not connect." . mysql_error()); mysql_select_db($db) or die("Can not connect."); $result = mysql_query("SHOW COLUMNS FROM ".$table.""); $i = 0; if (mysql_num_rows($result) > 0) { while ($row = mysql_fetch_assoc($result)) { $csv_output .= $row['Field']."; "; $i++; } } $csv_output .= "\n"; $values = mysql_query("SELECT * FROM ".$table.""); while ($rowr = mysql_fetch_row($values)) { for ($j=0;$j<$i;$j++) { $csv_output .= $rowr[$j]."; "; } $csv_output .= "\n"; } $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 $csv_output; exit; ?> Link to comment https://forums.phpfreaks.com/topic/218688-database-tables-and-fields-to-csv-help/ Share on other sites More sharing options...
mikecampbell Posted November 15, 2010 Share Posted November 15, 2010 Try this, using a fields array. <?php $host = 'localhost'; $user = 'user'; $pass = 'password'; $db = 'qdbname'; $table = 'tablename'; $file = 'export'; $fields = array('field1', 'field2', 'field3', 'field4'); $link = mysql_connect($host, $user, $pass) or die("Can not connect." . mysql_error()); mysql_select_db($db) or die("Can not connect."); $csv_output .= implode('; ', $fields); $csv_output .= "; \n"; $values = mysql_query("SELECT ".implode(',', $fields)." FROM ".$table); while ($rowr = mysql_fetch_row($values)) { for ($j=0;$j<count($fields);$j++) { $csv_output .= $rowr[$j]."; "; } $csv_output .= "\n"; } $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 $csv_output; exit; ?> Link to comment https://forums.phpfreaks.com/topic/218688-database-tables-and-fields-to-csv-help/#findComment-1134279 Share on other sites More sharing options...
semperfi Posted November 15, 2010 Author Share Posted November 15, 2010 Thank you mikecampbell worked perfect.... Link to comment https://forums.phpfreaks.com/topic/218688-database-tables-and-fields-to-csv-help/#findComment-1134432 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.