You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
2.5 KiB
PHP

<?php
// set output sebagai xml
header("Content-Type: text/xml");
// konfigurasi database;
require_once("../db_login.inc.php");
// ambil nomor nota dari form sebelumnya;
$no = $_GET["nonota"];
// buat koneksi
$mysqli = new mysqli(HOST, USER, PASSWORD, DATABASE);
// query untuk mengambil kode barang dan jumlahnya berdasarkan nomor faktur;
$query = "SELECT DISTINCT d.kode_barang, d.jumlah, m.kd_supplier, b.nama_barang
FROM m_pembelian m, d_pembelian d, barang b
WHERE m.no_faktur = d.no_faktur AND d.kode_barang = b.kode_barang AND m.no_faktur=?";
if($result = $mysqli->prepare($query))
{
// lakukan bind parameter;
$result->bind_param("s", $no);
// jalankan query;
$result->execute();
// simpan hasil query;
$result->store_result();
// simpan jumlah hasil query dalam var jumlah;
$jumlah = $result->num_rows;
// bind hasil query dalam var, kode barang -kb, jumlah -jmlBarang, kd_supplier -kdSupp;
$result->bind_result($kb, $jmlBarang, $kdSupp, $nb);
// buat objek dari DOM
$dom = new DOMDocument();
// buat root xml <response>
$response = $dom->createElement("response");
$dom->appendChild($response);
// buat node <barangBarang>
$barangbarang = $dom->createElement("barangBarang");
$response->appendChild($barangbarang);
$kds = "";
while($result->fetch())
{
// buat node <barang>
$barang = $dom->createElement("barang");
$barangbarang->appendChild($barang);
// buat node <kodeBarang> yang diisi kode barang dari hasil query;
$kodebarang = $dom->createElement("kodeBarang");
$barang->appendChild($kodebarang);
$kodeText = $dom->createTextNode("$kb");
$kodebarang->appendChild($kodeText);
$kds = $kdSupp;
}
// buat node <noFaktur>
$nofaktur = $dom->createElement("noFaktur");
$response->appendChild($nofaktur);
$fakturText = $dom->createTextNode("$no");
$nofaktur->appendChild($fakturText);
// buat node <jumlahData> untuk menampung jumlah data
$jumlahdata = $dom->createElement("jumlahData");
$response->appendChild($jumlahdata);
$jumlahText = $dom->createTextNode("$jumlah");
$jumlahdata->appendChild($jumlahText);
// buat node <kodeSupp> untuk menampung kode supplier
$kodesupp = $dom->createElement("kodeSupp");
$response->appendChild($kodesupp);
$kdText = $dom->createTextNode("$kds");
$kodesupp->appendChild($kdText);
// simpan xml;
$xmlString = $dom->saveXML();
// cetak xml;
print ($xmlString);
// tutup hasil query;
$result->close();
} else
{
print("<response>");
print("<jumlah>0</jumlah>");
print("</response>");
}
// tutup koneksi;
$mysqli->close();
?>