Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Generowanie pliku excel - formatowanie komorek
Forum PHP.pl > Forum > PHP
HardStyler
czy sa jakies predefiniowane zmienne w excelu styli ?

np chcialbym rozowe tlo dla np. calej kolumny towary

w jaki sposob przy generowaniu pliku xls definiowac takie rzeczy ?
Cysiaczek
Czy chodzi Tobie o program MS EXCEL?questionmark.gif
HardStyler
tak, korzystam z prostego skryptu generowania pliku xls z bazy danych

oto on:

  1. <?php
  2. $DB_Server = "localhost";
  3. $DB_Username = "usr";
  4. $DB_Password = "pass";
  5. $DB_DBName = "db";
  6. $DB_TBLName = "tbl";
  7. $sql = "Select id_towaru, nazwa_towaru, cena from $DB_TBLName where aktywny=1 ORDER
     BY nazwa_towaru ASC"
    ;
  8.  
  9.  
  10. $Use_Title = 1;
  11.  
  12. $now_date = date('m-d-Y H:i');
  13.  
  14. $title = "Cennik Detaliczny z dnia $now_date";
  15.  
  16.  
  17.  
  18.  
  19.  
  20. $Connect = @mysql_connect($DB_Server, $DB_Username, $DB_Password)
  21. or die("Couldn't connect to MySQL:<br>" . mysql_error() . "<br>" . mysql_errno());
  22.  
  23. $Db = @mysql_select_db($DB_DBName, $Connect)
  24. or die("Couldn't select database:<br>" . mysql_error(). "<br>" . mysql_errno());
  25.  
  26. $result = @mysql_query($sql,$Connect)
  27. or die("Couldn't execute query:<br>" . mysql_error(). "<br>" . mysql_errno());
  28.  
  29.  
  30.  
  31. $file_type = "vnd.ms-excel";
  32. $file_ending = "xls";
  33.  
  34.  
  35. header("Content-Type: application/$file_type");
  36. header("Content-Disposition: attachment; filename=cennik.$file_ending");
  37. header("Pragma: no-cache");
  38. header("Expires: 0");
  39.  
  40.  
  41.  
  42.  
  43. if ($Use_Title == 1)
  44. {
  45. echo("$titlennn");
  46. }
  47.  
  48. $sep = "t"; 
  49.  
  50.  
  51. for ($i = 0; $i < mysql_num_fields($result); $i++)
  52. {
  53. echo mysql_field_name($result,$i) . "t";
  54. }
  55. print("n");
  56.  
  57.  
  58.  
  59. while($row = mysql_fetch_row($result))
  60. {
  61. //set_time_limit(60); // HaRa
  62. $schema_insert = "";
  63. for($j=0; $j<mysql_num_fields($result);$j++)
  64. {
  65. if(!isset($row[$j]))
  66. $schema_insert .= "NULL".$sep;
  67. elseif ($row[$j] != "")
  68. $schema_insert .= "$row[$j]".$sep;
  69. else
  70. $schema_insert .= "".$sep;
  71. }
  72. $schema_insert = str_replace($sep."$", "", $schema_insert);
  73.  
  74. $schema_insert = preg_replace("/rn|nr|n|r/", " ", $schema_insert);
  75. $schema_insert .= "t";
  76. print(trim($schema_insert));
  77. print "n";
  78. }
  79.  
  80.  
  81. ?>


chodzi o kolorowanie skladni, komorek itp - zeby bylo czytelniej smile.gif
siemakuba
poczytaj tutaj: http://php5.pl/php/generowanie_plikow_xls_...technologii_com
ten artykuł wyjaśnia jak to robić.

pozdr.
Jim
jest biblioteka PEAR'a Spreadsheet_Excel_Writer za pomocą której formatowanie jest banalnie proste. a tu jest dobry artykuł o niej.
orson
witam

Cytat(siemakuba @ 3.07.2006, 14:08 ) *

na serwerze Linux/Unix też ? bo klasa z pear tak ...
siemakuba
Cytat(orson @ 7.07.2006, 07:43 ) *
na serwerze Linux/Unix też ?

Oczywiście że tak. Czemu miałoby to być zależne od platformy?

Aaa, prawda, trzeba położyć nacisk na temat artykułu, który niesforne forum przycięło w linku:
Generowanie plików XLS bez wykorzystania technologii COM

pozdr.
Jarod
Wykopalisko ale cóż.. Właśnie też tego szukam. I zastanawiam się czy jest sens w ogóle bawić się w instalowanie bibliotek. Jeśli wystarczy nam zwykły pliczek xls to sposób HardStyler jest rewelacyjny.


EDIT: Czy ktoś wie gdzie znalazłbym informacje na temat budowy struktury takie pliku? Rozważam dodanie troszkę bardzie zaawansowanej rozwiązanie do swojego fw.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.