PDA

View Full Version : سوال: چگونه می توان از یک صفحه خروجی اکسل گرفت.



techniconline
دوشنبه 20 خرداد 1387, 08:32 صبح
من می خواهم از یک صفحه که توسط اطلاعات بانک به صورت یک جدول تهیه شده یک خروجی اکسل با کدهای PHP بگیرم و قابل تعریف . کسی می تواند من رو راهنمایی کند؟

maysamscript
دوشنبه 20 خرداد 1387, 11:27 صبح
کافیه یه فایل با فرمت اکسل ایجاد کنی بعد هرچی میخوای بنویس تو فایل. هر سلول توسط یک tab کاراکتری از هم جدا میشه
همینو بس!

yaqubian
دوشنبه 20 خرداد 1387, 23:04 عصر
دوست عزیز یه نمونه کد برات گذاشتم البته باید تغییرات رو بدی
<?
include "../include/db_info.php";

$result=mysql_query("select * from t_fmessage order by message asc");

//*********************************************
function xlsBOF() {
echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
return;
}
//*********************************************
function xlsEOF() {
echo pack("ss", 0x0A, 0x00);
return;
}
//*********************************************
function xlsWriteNumber($Row, $Col, $Value) {
echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
echo pack("d", $Value);
return;
}
//*********************************************
function xlsWriteLabel($Row, $Col, $Value ) {
$L = strlen($Value);
echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
echo $Value;
return;
}
//*********************************************
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");;
header("Content-Disposition: attachment;filename=messagetobuyer.xls ");
header("Content-Transfer-Encoding: binary ");

xlsBOF();
//*********************************************
xlsWriteLabel(0,0,"List of Messages to Buyers.");
//*********************************************
// Make column labels. (at line 3)
xlsWriteLabel(2,1,"First Name");
xlsWriteLabel(2,2,"Last Name");
xlsWriteLabel(2,3,"E-mail");
xlsWriteLabel(2,4,"Phone");
xlsWriteLabel(2,5,"Message");
xlsWriteLabel(2,6,"B First Name");
xlsWriteLabel(2,7,"B Last Name");
xlsWriteLabel(2,8,"B Phone");
xlsWriteLabel(2,9,"B E-mail");
xlsWriteLabel(2,10,"B Stuff");
$xlsRow = 3;

//*********************************************
while($row=mysql_fetch_array($result))
{
xlsWriteLabel($xlsRow,1,$row['fname']);
xlsWriteLabel($xlsRow,2,$row['lname']);
xlsWriteLabel($xlsRow,3,$row['email']);
xlsWriteLabel($xlsRow,4,$row['tel']);
xlsWriteLabel($xlsRow,5,$row['message']);
xlsWriteLabel($xlsRow,6,$row['bfname']);
xlsWriteLabel($xlsRow,7,$row['blname']);
xlsWriteLabel($xlsRow,8,$row['btel']);
xlsWriteLabel($xlsRow,9,$row['bemail']);
xlsWriteLabel($xlsRow,10,$row['bstuff']);
$xlsRow++;
}
xlsEOF();
exit();
?>

yaqubian
سه شنبه 21 خرداد 1387, 23:01 عصر
دوست عزیز کد به دردتون خورد یا نه؟