Teşekkür ederim Tayfun hocam sayenizde sorunu çözdüm.
function convertData($array) {
if (is_numeric($array)) return (float)$array;
return $value;
}
foreach ($faturalar as $key => $val)
{
$faturalar[$key]["toplam"] = convertData($faturalar[$key]["toplam"]);
$faturalar[$key]["odenecek"] = convertData($faturalar[$key]["odenecek"]);
$faturalar[$key]["vergi"] = convertData($faturalar[$key]["vergi"]);
$faturalar[$key]["oran"] = $faturalar[$key]["vergi"] * 100 /$faturalar[$key]["toplam"];
}
// var_dump($faturalar);
echo json_encode($faturalar);
Teşekkür ederim. tedious, mssql falan kullandığımda çözememiştim. Verdiğin bağlantıdan yola çıkarak driver konusunu afaştırdığımda aşağıdaki msnodesqlv8 modülünü buldum.
const sql = require("msnodesqlv8");
const connectionString = "Server=makine\\ZRVSQL2008;Database=zirvegenel;Uid=kullaniciadi;Pwd=sifre;Trusted_Connection=No;Driver={SQL Server Native Client 11.0}";
const query = "SELECT klavuz FROM FirmalarListesi where subeno = 1 and gmorid='G'";
sql.query(connectionString, query, (err, rows) => {
if (err){
console.log(err)
}
else{
console.log(rows);
}
});
Aşağıdaki gibi kullanınca çalıştı şimdilik sorun yok gibi :)
function tokenAl(tokenOpt) {
request(tokenOpt, function (error, response, body) {
if (error) throw new Error(error);
tokenId = JSON.parse(body).token;
for (let key in zaman[ay]) {
faturaTarihBas = yil + "-" + ay.toString().padStart(2, 0) + "-" + zaman[ay][key][0];
faturaTarihSon = yil + "-" + ay.toString().padStart(2, 0) + "-" + zaman[ay][key][1];
let jp = { faturaTarihBas: faturaTarihBas, textBox: "", faturaTarihSon: faturaTarihSon }
faturaSorgula(tokenId, jp)
setTimeout(function () {
if (key == Object.keys(zaman[ay]).length) {
oturumKapat(tokenId)
}
}, key * 300);
};
});
}
Merhaba cevabın için teşekkür ederim. Konuları araştıracağım. İşlemleri nodejs ile yapmaya çalışıyorum.
Ajax ile yaptığımda token bilgisi alırken aşağıdaki hatayı alınca.
Önce php curl denedim çalıştı. Fakat bana gereken javascript veya nodejs üzerinde çalışabilen olması.
Sonunda nodejs > request ile başarılı bir sorgu alabildim.
Access to XMLHttpRequest at 'postUrl' from origin 'http://localhost' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
Aşağıdaki kodları bir excel dosyasını php ile okutmak için kullanıyorum. Deneyebilir misin?
$('#excelFile').prop('files')[0]
tam emin değilim ama çoklu göndereceksen sonundaki [0]
kodunu kaldırman gerekebilir.
<input id="excelFile" type="file" />
$('#excelFile').change(function () {
var file_data = $('#excelFile').prop('files')[0];
var form_data = new FormData();
form_data.append('excelFile', file_data);
$.ajax({
url: 'excel_to_html_table.php', // point to server-side PHP script
dataType: 'json', // what to expect back from the PHP script, if anything
cache: false,
contentType: false,
processData: false,
data: form_data,
type: 'post',
success: function (dizi) {
}
});
})
Teşekkür ederim tam emin olmasam da File System modülünün dosya veya uygulama çalıştırma üzerine bir işlevi yok tam emin olmasam da sanırsam arka planda okuma ve yazma üzerine bir olayı var.
Örneğin metinbelgesi.txt, data.json gibi dosyaların içeriğini arka planda okuyabilir ve yazabilir fakat Not Defteri uygulaması ile çalıştıramaz.
Zaten kendi modülü olan child_process bu işi görüyormuş ... :)
Sorunun çözümünü buldum...
var cp = require('child_process');
cp.exec(__dirname + "\\ExcelDosyası.xlsx", function (err, stdout, stderr) {
// handle err, stdout, stderr
});
Teşekkür ederim. Yani sorunun şimdi farkına vardım sanırsam.
Ben .carikodu
ekleyerek hata yapıyormuşum. Doğal olarak bir nesne oluşmadığı için anahtarın da bir karşılığı olmuyor.
Teşekkür ederim normalde ben de bu yöntemi kullanıyorum yine de bilmediğim farklı bir yöntem varsa öğrenmek istemiştim.