Export Database in excel

First of all you have to make a php script named as script.php

<?php
error_reporting(0);

function export_excel_csv()
{
$conn = mysql_connect("localhost","root","");

$db = mysql_select_db("database",$conn);

    $sql = "SELECT * FROM tablename";

    $rec = mysql_query($sql) or die (mysql_error());
   
    $num_fields = mysql_num_fields($rec);
   
    for($i = 0; $i < $num_fields; $i++ )
    {
        $header .= mysql_field_name($rec,$i)."\t";
    }
   
    while($row = mysql_fetch_row($rec))
    {
        $line = '';
        foreach($row as $value)
        {                                          
            if((!isset($value)) || ($value == ""))
            {
                $value = "\t";
            }
            else
            {
                $value = str_replace( '"' , '""' , $value );
                $value = '"' . $value . '"' . "\t";
            }
            $line .= $value;
        }
        $data .= trim( $line ) . "\n";
    }
   
    $data = str_replace("\r" , "" , $data);
   
    if ($data == "")
    {
        $data = "\n No Record Found!\n";                      
    }
   
    header("Content-type: application/octet-stream");
    header("Content-Disposition: attachment; filename=reports.xls");
    header("Pragma: no-cache");
    header("Expires: 0");
    print "$header\n$data";
}

    export_excel_csv();
?>


Then you have to create a page from where you will call this funtion it may be php page or html page (index.html)
create a form with submit button use action with the script page

<form action="script.php">
<input type="submit" value="export">
</form>

No comments:

Post a Comment