this example will help to fetch record from database and export it to excel file in csv format in php.
<?php
class database
{
private $db_handle;
private $user_name;
private $password;
private $data_base;
private $host_name;
private $sql;
private $results;
function __construct($host="localhost",$user,$passwd)
{
$this->db_handle = mysql_connect($host,$user,$passwd);
}
function dbSelect($db)
{
$this->data_base = $db;
if(!mysql_select_db($this->data_base, $this->db_handle))
{
error_log(mysql_error(), 3, "/phplog.err");
die("Error connecting to Database");
}
}
function executeSql($sql_stmt)
{
$this->sql = $sql_stmt;
$this->result = mysql_query($this->sql);
}
function returnResults()
{
return $this->result;
}
}
$dbc=mysql_connect('localhost','username','password');
$db_selected =mysql_select_db('databasename',$dbc);
$user = "username";
$passwd = "password";
$db = "database name";
$videoCount="select * from users ";
$dbObject = new database($host,$user,$passwd);
$dbObject->dbSelect($db);
$dbObject->executeSql($videoCount);
$res = $dbObject->returnResults();
$file = "excel.csv";
$nameStr = "";
function getUserName($id,$dbc){
$getUserName="select user_id,user_name,dept from users where user_id=$id";
$userNameResult=mysql_query($getUserName,$dbc)or ('Error in get User Name'.mysql_error());
$name=mysql_fetch_row($userNameResult);
return($name);
}
$Title.=$Title."User Name".","."Department"."\n";
while($record = mysql_fetch_object($res))
{
$vTitle = $record->video_title;
$usrName=getUserName($record->user_id,$dbc);
$nameStr = $nameStr.$vTitle.",".$usrName[0].",".$usrName[1]."\n";
}
header("Content-type: application/octet-stream");
header("Content-Disposition: attachment; filename=$file");
header("Cache-Control: public");
header("Content-length: ".strlen($nameStr)); // tells file size
header("Pragma: no-cache");
header("Expires: 0");
echo $Title;
echo $nameStr;
?>
No comments:
Post a Comment