<?php
if(!empty($_GET["kur"])):
$_SESSION["kur"] = $_GET["kur"];
endif;
if(!$_SESSION["kur"]):
$_SESSION["kur"] = "TRY";
endif;
function Altinkaynak($deger){
try{
// $client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL');
$client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL', array('connection_timeout'=> 5));
$auth = new stdClass();
$auth->Username = 'AltinkaynakWebServis';
$auth->Password = 'AltinkaynakWebServis';
$header = new SoapHeader('http://data.altinkaynak.com/', 'AuthHeader', $auth, false);
$client->__setSoapHeaders($header);
// altın kurları
$response = $client->GetCurrency();
$xml = simplexml_load_string($response->GetCurrencyResult);
//dolar kurları
$golden = $client->getGold();
$goldenxml = simplexml_load_string($golden->GetGoldResult);
return $euro = $xml->Kur[$deger]->Satis;
}catch (Exception $e) {
// echo "Soap Hatasi Olustu: " . $e->getMessage();
}
}
function CanliDoviz($deger){
$jsonVeri = file_get_contents("https://canlidoviz.com/doviz-kurlari.jsonld",true);
$veri = json_decode($jsonVeri,1);
$response = $veri["mainEntity"]["itemListElement"]; //doviz listesi
$birim = $response[$deger]["currency"];
$result = $response[$deger]["currentExchangeRate"]["price"]; //fiyatı alıyoruz
return $result;
// $deger = 0 dolar 1 euro
}
function TCMBDoviz($deger, $alis = null){
$veri = simplexml_load_file('http://www.tcmb.gov.tr/kurlar/today.xml');
$icerik = $veri->Currency;
$name = $icerik->Isim;
$KurKodu = $icerik->attributes();
$ForexAlis = $icerik[$deger]->ForexBuying; // Forex Alış
$ForexSatis = $icerik[$deger]->ForexSelling; // Forex Satış
$BankaAlis = $icerik[$deger]->BanknoteBuying; // Banka Alış
$BankaSatis = $icerik[$deger]->BanknoteSelling; // Banka Satış
if($alis == ""){
return $BankaSatis;
}elseif($alis == "satis"){
return $BankaSatis;
}elseif($alis == "alis"){
return $BankaAlis;
}
}
function TruncGil($key,$alis){
$jsonVeri = file_get_contents("https://finans.truncgil.com/today.json",true);
$veri = json_decode($jsonVeri,1);
$birim = [
'USD' => 'ABD DOLARI',
'EUR' => 'EURO',
];
return $veri[$birim[$key]][$alis];
}
if ( time() > $_SESSION['doviz_cooldown'] ):
unset($_SESSION['dolar']);
unset($_SESSION['euro']);
unset($_SESSION['doviz_cooldown']);
if(CanliDoviz(0) != ""):
$dolar = round(CanliDoviz(0), 2);
$euro = round(CanliDoviz(1), 2);
elseif(Altinkaynak(0) != ""):
$dolar = round(Altinkaynak(0), 2);
$euro = round(Altinkaynak(1), 2);
elseif(TCMBDoviz(0) != ""):
$dolar = round(TCMBDoviz(0), 2);
$euro = round(TCMBDoviz(3), 2);
elseif(TruncGil("USD","Alış") != "" ):
$dolar = round(TruncGil("USD","Satış"), 2);
$euro = round(TruncGil("EUR","Satış"), 2);
endif;
$_SESSION['doviz_cooldown'] = time() + 900;
$_SESSION['dolar'] = $dolar;
$_SESSION['euro'] = $euro;
else:
$dolar = $_SESSION['dolar'];
$euro = $_SESSION['euro'];
endif;
function kur($value,$value2){
if($value2 == "EUR"):
return $value." EUR";
elseif($value2 == "USD"):
return "$".$value;
elseif($value2 == "TRY"):
return $value." TL";
endif;
} 500 hatası alıyorum nerede sorun var
6
●226
- 04-02-2024, 14:23:05merhaba scriptimde döviz kurlarının çekildiği bir sistem mevcut ama hata vermeye başladı durup dururken ve 500 hatası alıp sisteme erişim sağlayamıyorum tek dosya bu var döviz ile alakalı ama sorunun ne olduğunu anlayamadım yardımcı olabilirmisiniz.
- 04-02-2024, 14:30:16
<?php session_start(); // Session'ı başlat // GET isteği üzerinden kur parametresini al if (!empty($_GET["kur"])) { $_SESSION["kur"] = $_GET["kur"]; } // Varsayılan kur belirleme if (!isset($_SESSION["kur"]) || empty($_SESSION["kur"])) { $_SESSION["kur"] = "TRY"; } function Altinkaynak($deger) { try { // SOAP istemcisini oluştur $client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL', array('connection_timeout' => 5)); $auth = new stdClass(); $auth->Username = 'AltinkaynakWebServis'; $auth->Password = 'AltinkaynakWebServis'; $header = new SoapHeader('http://data.altinkaynak.com/', 'AuthHeader', $auth, false); $client->__setSoapHeaders($header); // Altın kurlarını al $response = $client->GetCurrency(); $xml = simplexml_load_string($response->GetCurrencyResult); // Euro değerini döndür return $xml->Kur[$deger]->Satis; } catch (Exception $e) { // SOAP hatası oluştuğunda // Hata iletisi: echo "Soap Hatasi Olustu: " . $e->getMessage(); return null; // Hata durumunu işlemek için null döndür } } function CanliDoviz($deger) { try { // CanliDoviz API'sinden JSON verisini al $jsonVeri = file_get_contents("https://canlidoviz.com/doviz-kurlari.jsonld", true); $veri = json_decode($jsonVeri, true); // Döviz verisini döndür return $veri["mainEntity"]["itemListElement"][$deger]["currentExchangeRate"]["price"]; } catch (Exception $e) { // Hata durumunda return null; // Hata durumunu işlemek için null döndür } } function TCMBDoviz($deger, $alis = null) { try { // TCMB'den XML verisini al $veri = simplexml_load_file('http://www.tcmb.gov.tr/kurlar/today.xml'); // Kur bilgilerini al $forexSatis = $veri->Currency[$deger]->ForexSelling; $bankaSatis = $veri->Currency[$deger]->BanknoteSelling; // Değerleri döndür if ($alis === "satis") { return $forexSatis; } elseif ($alis === "alis") { return $bankaSatis; } } catch (Exception $e) { // Hata durumunda return null; // Hata durumunu işlemek için null döndür } } function TruncGil($key, $alis) { try { // Truncgil API'sinden JSON verisini al $jsonVeri = file_get_contents("https://finans.truncgil.com/today.json", true); $veri = json_decode($jsonVeri, true); // Döviz değerini döndür $birim = ['USD' => 'ABD DOLARI', 'EUR' => 'EURO']; return $veri[$birim[$key]][$alis]; } catch (Exception $e) { // Hata durumunda return null; // Hata durumunu işlemek için null döndür } } // Veriyi güncellemek için cooldown süresini kontrol et if (time() > $_SESSION['doviz_cooldown']) { unset($_SESSION['dolar']); unset($_SESSION['euro']); unset($_SESSION['doviz_cooldown']); // Döviz değerlerini al if ($dolar = CanliDoviz(0)) { $_SESSION['dolar'] = round($dolar, 2); } elseif ($dolar = Altinkaynak(0)) { $_SESSION['dolar'] = round($dolar, 2); } elseif ($dolar = TCMBDoviz(0)) { $_SESSION['dolar'] = round($dolar, 2); } elseif ($dolar = TruncGil("USD", "Alış")) { $_SESSION['dolar'] = round($dolar, 2); } if ($euro = CanliDoviz(1)) { $_SESSION['euro'] = round($euro, 2); } elseif ($euro = Altinkaynak(1)) { $_SESSION['euro'] = round($euro, 2); } elseif ($euro = TCMBDoviz(3)) { $_SESSION['euro'] = round($euro, 2); } elseif ($euro = TruncGil("EUR", "Alış")) { $_SESSION['euro'] = round($euro, 2); } // Veri güncelleme cooldown süresini ayarla $_SESSION['doviz_cooldown'] = time() + 900; // 900 saniye (15 dakika) } else { // Cooldown süresi geçmemişse, önbellekten verileri al $dolar = $_SESSION['dolar']; $euro = $_SESSION['euro']; } function kur($value, $value2) { if ($value2 == "EUR") { return $value . " EUR"; } elseif ($value2 == "USD") { return "$" . $value; } elseif ($value2 == "TRY") { return $value . " TL"; } }iyi forumlar. - 04-02-2024, 14:31:49Halen daha 500 hatası alırsanız PM İletin, yardımcı olayım.devopsbyxvan adlı üyeden alıntı: mesajı görüntüle
- 04-02-2024, 14:33:00session start ekledim hata kodları şu şekilde
[B]Warning[/B]: Undefined array key "doviz_cooldown" in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]91[/B] [B]Warning[/B]: file_get_contents(https://canlidoviz.com/doviz-kurlari.jsonld): Failed to open stream: HTTP request failed! HTTP/1.1 404 Not Found in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]43[/B] [B]Warning[/B]: Trying to access array offset on value of type null in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]47[/B] [B]Warning[/B]: Trying to access array offset on value of type null in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]47[/B] [B]Warning[/B]: Trying to access array offset on value of type null in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]47[/B] [B]Warning[/B]: Trying to access array offset on value of type null in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]47[/B] [B]Warning[/B]: Trying to access array offset on value of type null in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]47[/B] [B]Fatal error[/B]: Uncaught TypeError: round(): Argument #1 ($num) must be of type int|float, SimpleXMLElement given in /home/ahsapaza/public_html/eklentiler/doviz/doviz.php:100 Stack trace: #0 /home/ahsapaza/public_html/eklentiler/doviz/doviz.php(100): round() #1 /home/ahsapaza/public_html/index.php(15): include('/home/ahsapaza/...') #2 {main} thrown in [B]/home/ahsapaza/public_html/eklentiler/doviz/doviz.php[/B] on line [B]100[/B] - 04-02-2024, 14:38:09<?php
// Session başlatma kontrolü
session_start();
if (!empty($_GET["kur"])) {
$_SESSION["kur"] = $_GET["kur"];
}
if (!isset($_SESSION["kur"])) {
$_SESSION["kur"] = "TRY";
}
function Altinkaynak($deger)
{
try {
$client = new SoapClient('http://data.altinkaynak.com/DataService.asmx?WSDL', array('connection_timeout' => 5));
$auth = new stdClass();
$auth->Username = 'AltinkaynakWebServis';
$auth->Password = 'AltinkaynakWebServis';
$header = new SoapHeader('http://data.altinkaynak.com/', 'AuthHeader', $auth, false);
$client->__setSoapHeaders($header);
// Altın kurları
$response = $client->GetCurrency();
$xml = simplexml_load_string($response->GetCurrencyResult);
// Dolar kurları
return $xml->Kur[$deger]->Satis;
} catch (Exception $e) {
// SOAP hatası oluştuğunda işlem yapılabilir.
// echo "Soap Hatasi Olustu: " . $e->getMessage();
return null;
}
}
function CanliDoviz($deger)
{
$jsonVeri = @file_get_contents("https://canlidoviz.com/doviz-kurlari.jsonld");
if ($jsonVeri === false) {
// Hata durumu
return null;
}
$veri = json_decode($jsonVeri, true);
$response = $veri["mainEntity"]["itemListElement"];
return $response[$deger]["currentExchangeRate"]["price"] ?? null;
}
function TCMBDoviz($deger, $alis = null)
{
$veri = simplexml_load_file('http://www.tcmb.gov.tr/kurlar/today.xml');
if ($veri === false) {
// Hata durumu
return null;
}
$icerik = $veri->Currency;
$ForexAlis = $icerik[$deger]->ForexBuying ?? null;
$ForexSatis = $icerik[$deger]->ForexSelling ?? null;
$BankaAlis = $icerik[$deger]->BanknoteBuying ?? null;
$BankaSatis = $icerik[$deger]->BanknoteSelling ?? null;
if ($alis === "") {
return $BankaSatis;
} elseif ($alis === "satis") {
return $BankaSatis;
} elseif ($alis === "alis") {
return $BankaAlis;
}
return null;
}
function TruncGil($key, $alis)
{
$jsonVeri = @file_get_contents("https://finans.truncgil.com/today.json");
if ($jsonVeri === false) {
// Hata durumu
return null;
}
$veri = json_decode($jsonVeri, true);
$birim = [
'USD' => 'ABD DOLARI',
'EUR' => 'EURO',
];
return $veri[$birim[$key]][$alis] ?? null;
}
// Zaman kontrolü ve döviz değerlerini algoritması
if (time() > ($_SESSION['doviz_cooldown'] ?? 0)) {
unset($_SESSION['dolar']);
unset($_SESSION['euro']);
unset($_SESSION['doviz_cooldown']);
$dolar = $euro = null;
if (($value = CanliDoviz(0)) !== null) {
$dolar = round($value, 2);
$euro = round(CanliDoviz(1), 2);
} elseif (($value = Altinkaynak(0)) !== null) {
$dolar = round($value, 2);
$euro = round(Altinkaynak(1), 2);
} elseif (($value = TCMBDoviz(0)) !== null) {
$dolar = round($value, 2);
$euro = round(TCMBDoviz(3), 2);
} elseif (($value = TruncGil("USD", "Alış")) !== null) {
$dolar = round($value, 2);
$euro = round(TruncGil("EUR", "Satış"), 2);
}
$_SESSION['doviz_cooldown'] = time() + 900;
$_SESSION['dolar'] = $dolar;
$_SESSION['euro'] = $euro;
} else {
$dolar = $_SESSION['dolar'] ?? null;
$euro = $_SESSION['euro'] ?? null;
}
function kur($value, $value2)
{
if ($value2 == "EUR") {
return $value . " EUR";
} elseif ($value2 == "USD") {
return "$" . $value;
} elseif ($value2 == "TRY") {
return $value . " TL";
}
return null;
}
?>