<?php
$values = ['dolar', 'euro', 'doviz', 'döviz'];
if (isset($_GET['q'])) {
$s = $_GET['q'];
if (in_array(strtolower($s), $values)) {
$arr = [];
$connect_web = simplexml_load_file('https://www.tcmb.gov.tr/kurlar/today.xml');
$arr[] = $connect_web->Currency[0];
$arr[] = $connect_web->Currency[3];
?>
<div class="details">
<h3 class="name">Kurlar</h3>
<?php foreach ($arr as $item) { ?>
<div class="para">
<div class="title"><?= $item->Isim ?></div>
<div class="d"><span>Alış: </span><span class="alis"><?= $item->BanknoteBuying ?></span></div>
<div class="d"><span>Satış: </span><span class="satis"></span><?= $item->BanknoteSelling ?></div>
</div>
<?php } ?>
<span class="close">×</span>
</div>
<?php } } ?>
Aslında ne istediğinizi anladım da benim biraz uğraşasım varmış :)
Ayrıca sırf bir dolar kurunu öğreneceğiz diye arama kutusunda enter a basıp aramak pek iyi bir fikir olmayabilir ama siz bilirsiniz. Onu yapmak nispeten daha kolay.
Ajax isteklerinde Cross Origin sorunu oluştuğu için belirli aralıklarla döviz xml dosyasını kendi sunucunuza kaydedin.
$getFile = file_get_contents('https://www.tcmb.gov.tr/kurlar/today.xml');
file_put_contents('kurlar.xml', $getFile);
Rica ederim, kargasa1982 daha kısa bir yolunu göstermiş, o şekilde yapmanız daha kolay olabilirdi aslında. Şimdi geçti ama bu işi direkt olarak SQL tarafında halledilmek daha iyidir her zaman. Ufak bir değişiklikle işinize yarar hale gelebilir.
UPDATE tabloadi SET puan=yas, yas='-' WHERE puan = ''
https://regex101.com/r/MSQPu9/2
$newStr = preg_replace('/\d+- (\w+)(\n)?/', '$1$2', $oldStr);
$query = $db->query("SELECT id, yas, puan FROM table")->fetchAll(PDO::FETCH_ASSOC);
foreach ($query as $i) {
if (empty($i['puan'])) {
$db->query("UPDATE table SET yas = '-', puan = {$i['yas']} WHERE id = {$i['id']}");
}
}
Başta ve sondaki karakterler çift tırnak işareti ise, yukarıdaki metin bir string ise ve trim fonksiyonunu bir değişkene eşitlediyseniz çalışmama ihtimali yok.
$str = trim($str, '"');
Eskiden kalma bir alışkanlık kullanıcı adı kullanımım