خروجی اکسل و زیبا سازی

pazhmaan

تازه وارد
سلام به همه

دوستان من با این کد تونستم که یک خروجی اکسل با پسوند csv ایجاد کنم


کد:
<?php
//header("Content-Type: application/vnd.ms-excel");
//دریافت اطلاعات از فرم و ذخیره سازی در متغیرها
$name=$_POST['Name'];
$from=$_POST['E-Mail'];
$subject=$_POST['Subject'];
$message=$_POST['Message'];

// تیتر ستونهای موجود در فایل اکسل
$excel_hname= "نام و نام خانوادگی";
$excel_hfrom= "پست الکترونیک";
$excel_hsubject= "موضوع";
$excel_hmessage= "متن پیام";

$breaks = array("\r\n", "\n", "\r");
$copymessage = str_replace($breaks, " ", $message);

// ساخت فایل csv برای ذخیره سازی اطلاعات
$csvData = $excel_hname . "," .$excel_hfrom . "," . $excel_hsubject . "," . $excel_hmessage ."\r\n";
$csvData .= $name . "," .$from . "," . $subject . "," . $copymessage ."\r\n";

// ساختن و نوشتن اطلاعات فرم در فایل formdata.csv
$fp = fopen("excel/formdata.csv","w") or die ("سیستم توانایی دسترسی به فایل را ندارد!");
fwrite($fp,"\xEF\xBB\xBF");
fwrite($fp,$csvData);
fclose($fp);
?>
اما حالا می خوام عنوان هر ستون اکسل رو با یک رنگ از بقیه جدا کنم همچنین فونت اون ها رو هم درشت کنم

یک چیزی شبیه این حالا باید چی کار کنم ؟؟؟

attachment.php


کپی رایت کد. از ایجا استفاده کردم



You must be registered for see images attach


 
آخرین ویرایش توسط مدیر:

Goback

کاربر عضو
تا جایی که میدونم فایلهای CSV قابل فرمت دهی نیست،باید حتما از پسوند xls برای این کار استفاده کنی

 

pazhmaan

تازه وارد
سلام ممنونم که جواب دادید

با یکم ویرایش تونستم خروجی xls بگیرم حالا باید از چه تابع ای استفاده کنم چطوری باید رنگ بکگراند رو تغییر بدهم .

اگه لطف بکنید فقط اسم تابع رو بگوید یا یک راهنمای کوچیک هم بکنید بقیه اش حله خودم جستجو میکنم و از شما بسیار ممنونم

بازم تشکر

 

Goback

کاربر عضو
امیدوارم فقط پسوند فایلو نکرده باشی XLS!

از این کتابخونه:


کد:
https://github.com/PHPOffice/PHPExcel
اینجوری استفاده کن:


کد:
http://stackoverflow.com/questions/6773272/set-background-cell-color-in-phpexcel
یونیکد رو نمیدونم ساپورت میکنه یانه،نتیجه رو اینجا بذاری بد نیست به معلومات ماهم اضافه میشه :)

 

pazhmaan

تازه وارد
امیدوارم فقط پسوند فایلو نکرده باشی XLS!از این کتابخونه:


کد:
https://github.com/PHPOffice/PHPExcel
اینجوری استفاده کن:


کد:
http://stackoverflow.com/questions/6773272/set-background-cell-color-in-phpexcel
یونیکد رو نمیدونم ساپورت میکنه یانه،نتیجه رو اینجا بذاری بد نیست به معلومات ماهم اضافه میشه :)
سلام

PHPExcel میشناسم و میخواستم طرفش نرم چون برای من خیلی سخته و هم خروجی که میخوام بگیرم خیلی ساده هست ولی مثل ایتکه چاره ای جز این نیست باید باهاش یکم ور برم ببینم چه طوریه

چشب حتما اگه تونستم به جای برسم حتما اینجا میگم بازم تشکر

 

pazhmaan

تازه وارد
سلام به همه

آقا رفتیم طرفش دیدم اونقدرها هم سخت نیست :66:

بهترین نمونه ای که میتونم بزارم که با یک بار اجرا کل کار بفهمید همین مثالی هست که خودش زده

یعنی این



یا این

runnable.com/Uot2A2l8VxsUAAAR/read-a-simple-2007-xlsx-excel-file-for-php

اینو فقط اجرا کنید. کل کار رو میفهمید و فقط لازمه که یک حلقه اضافه کنید که پایگاه دادتون رو بنویسه

با این 2 خط کد هم میتونید به نوار عنوان یا هدر یا هر چیز دیگه که بهش میگید رنگ بدهید


کد:
$objPHPExcel->getActiveSheet()->getStyle('A1:H1')->getFont()->setBold(true);
$objPHPExcel->getActiveSheet()->getStyle('A1:H1')->applyFromArray(array('fill' => array('type' => PHPExcel_Style_Fill::FILL_SOLID, 'color' => array('rgb' => 'CCCCCC') ), ) );
$objPHPExcel->getActiveSheet()->getStyle('A1:H1')->getBorders()->getAllBorders()->setBorderStyle(PHPExcel_Style_Border::BORDER_THIN);
البته یادتون نره که برای اجرای این بخش به کتابخونه phpexcel نباز دارید که میتونید از سایت خودش دانلود کنید



فعلا یا علی :48:

 
بالا