/farmasi.orig/content/lap_ms_barang_kadaluarsa.php

https://github.com/reekoheek/srmis · PHP · 121 lines · 58 code · 34 blank · 29 comment · 1 complexity · cc7e1f05f89ef71074b10f475e03a299 MD5 · raw file

  1. <?php
  2. // nama file
  3. include "../include/koneksi.php";
  4. $namaFile = "lap_ms_barang_kadaluarsa.xls";
  5. // Function penanda awal file (Begin Of File) Excel
  6. function xlsBOF() {
  7. echo pack("ssssss", 0x809, 0x8, 0x0, 0x10, 0x0, 0x0);
  8. return;
  9. }
  10. // Function penanda akhir file (End Of File) Excel
  11. function xlsEOF() {
  12. echo pack("ss", 0x0A, 0x00);
  13. return;
  14. }
  15. // Function untuk menulis data (angka) ke cell excel
  16. function xlsWriteNumber($Row, $Col, $Value) {
  17. echo pack("sssss", 0x203, 14, $Row, $Col, 0x0);
  18. echo pack("d", $Value);
  19. return;
  20. }
  21. // Function untuk menulis data (text) ke cell excel
  22. function xlsWriteLabel($Row, $Col, $Value ) {
  23. $L = strlen($Value);
  24. echo pack("ssssss", 0x204, 8 + $L, $Row, $Col, 0x0, $L);
  25. echo $Value;
  26. return;
  27. }
  28. // header file excel
  29. header("Pragma: public");
  30. header("Expires: 0");
  31. header("Cache-Control: must-revalidate, post-check=0,
  32. pre-check=0");
  33. header("Content-Type: application/force-download");
  34. header("Content-Type: application/octet-stream");
  35. header("Content-Type: application/download");
  36. // header untuk nama file
  37. header("Content-Disposition: attachment;
  38. filename=".$namaFile."");
  39. header("Content-Transfer-Encoding: binary ");
  40. // memanggil function penanda awal file excel
  41. xlsBOF();
  42. // ------ membuat kolom pada excel --- //
  43. // mengisi pada cell A1 (baris ke-0, kolom ke-0)
  44. xlsWriteLabel(0,0,"DAFTAR BARANG GUDANG UTAMA KADALUARSA");
  45. xlsWriteLabel(1,0,"NO");
  46. // mengisi pada cell A2 (baris ke-0, kolom ke-1)
  47. xlsWriteLabel(1,1,"KODE");
  48. // mengisi pada cell A3 (baris ke-0, kolom ke-2)
  49. xlsWriteLabel(1,2,"NAMA");
  50. // mengisi pada cell A4 (baris ke-0, kolom ke-3)
  51. xlsWriteLabel(1,3,"STOK");
  52. // mengisi pada cell A5 (baris ke-0, kolom ke-4)
  53. xlsWriteLabel(1,4,"EXPIRE");
  54. xlsWriteLabel(1,5,"HARGA");
  55. // -------- menampilkan data --------- //
  56. // koneksi ke mysql
  57. // query menampilkan semua data
  58. $query = "SELECT * FROM ms_barang WHERE flags='9' ORDER BY ex_year,ex_month,ex_year ASC";
  59. $hasil = mysql_query($query);
  60. // nilai awal untuk baris cell
  61. $noBarisCell = 2;
  62. // nilai awal untuk nomor urut data
  63. $noData = 1;
  64. while ($data = mysql_fetch_array($hasil))
  65. {
  66. // menampilkan no. urut data
  67. xlsWriteNumber($noBarisCell,0,$noData);
  68. // menampilkan data nim
  69. xlsWriteLabel($noBarisCell,1,$data['kd_barang']);
  70. // menampilkan data nama mahasiswa
  71. xlsWriteLabel($noBarisCell,2,$data['nama']);
  72. // menampilkan data nilai
  73. xlsWriteNumber($noBarisCell,3,$data['stok']);
  74. // menentukan status kelulusan
  75. //if ($data['nilai'] >= 60) $status = "LULUS";
  76. //else $status = "TIDAK LULUS";
  77. // menampilkan status kelulusan
  78. xlsWriteLabel($noBarisCell,4,$data['expire_date']);
  79. xlsWriteLabel($noBarisCell,5,$data['harga_dosp']);
  80. // increment untuk no. baris cell dan no. urut data
  81. $noBarisCell++;
  82. $noData++;
  83. }
  84. // memanggil function penanda akhir file excel
  85. xlsEOF();
  86. exit();
  87. ?>