<?php
$context = stream_context_create(array('ssl' => array('header' => 'Accept: application/xml')));
$url = 'https://webservice.ilpen.com.tr/xml/xml_list_all_products';
$xml = file_get_contents($url, false, $context);
$xml = simplexml_load_string($xml);
foreach($xml->Urunler->Urun as $urun){
$id = $urun->UrunKartiID;
$UrunAdi = $urun->UrunAdi;
$UrunGrupKodu = $urun->UrunGrupKodu;
$UrunSecenek = $urun->UrunSecenek;
foreach($UrunSecenek->Secenek as $secenek){
$VaryasyonID = $secenek->VaryasyonID;
$VaryasyonDurum = $secenek->VaryasyonDurum;
}
}
?>
Altığın bir hata yoksa.$sorgu değişkenini ekrana yazdır sorguda sıkıntı varmı diye bak.
yoksa gelen değerleri ve db'den gelen sonuçları yazdır.
Site kaynağını incelersen aşağıdaki kodu göreceksin.
Yaptığı şey Jquery ile 10sn de bir yeni veri varsa onu çekmek.
setInterval(function () {
checkContent();
}, 10000);
function checkContent() {
$.post("http://www.evdeneve.gen.tr/_endpoint/defter.php?action=check", {
lastID: lastID
}, function (response) {
if (response.success == true) {
$("#npShares").prepend(response.data);
$("#npShares .segment").first().transition('flash');
$('.npDefterLogButon').popup();
lastID = response.last;
}
}, "json");
}
<script>
var lastStack = 1;
var lastID = 2713046;
$(document)
.ready(function () {
$('.ui.form').form({
keyboardShortcuts: false,
fields: {
term: ['minLength[3]', 'empty'],
content: ['minLength[20]', 'empty']
}
});
$.fn.api.settings.api = {
'save': 'http://www.evdeneve.gen.tr/_endpoint/defter.php?action=save',
'search': 'http://www.evdeneve.gen.tr/_endpoint/defter.php?action=search'
};
$('#formDefter')
.api({
action: 'save',
method: 'POST',
serializeForm: true,
successTest: function (response) {
return response.success || false;
},
onSuccess: function (response) {
//Altta mesaj göster
$('#formDefter > .message').html(response.message).removeClass("error").addClass("success").transition('show');
//Bilgi Güncelleme İsteklerime Bi tane yerleştir
$('textarea').val('');
$("#npShares").prepend(response.data);
lastID = response.last;
},
onFailure: function (response) {
//Altta mesaj göster
$('#formDefter > .message').removeClass("success").addClass("error").html(response.message);
}
});
$('#formArama')
.api({
action: 'search',
method: 'POST',
serializeForm: true,
successTest: function (response) {
return response.success || false;
},
onSuccess: function (response) {
$('#formArama > .message').removeClass("error").addClass("success").html(response.message);
$("#npShares").html(response.data);
},
onFailure: function (response) {
$('#formArama > .message').removeClass("success").addClass("error").html(response.message);
},
beforeSend: function (settings) {
if ($("#npArama").val() == '') {
return false;
}
}
});
// loadContent();
$('.npDefterLogButon').popup();
$(document).on('click', '#npLoadMore', function () {
loadContent();
});
$(document).on('click', '.npDelete', function () {
var segment = $(this).closest('.segment');
$.post("http://www.evdeneve.gen.tr/_endpoint/defter.php?action=delete", {
id: $(this).attr('data')
}, function (response) {
if (response.success == true) {
segment.transition('drop');
}
}, "json");
});
$(document).on('click', '.npDefterMenu', function () {
$("html, body").animate({scrollTop: 0}, "slow");
// $("textarea").focus();
return false;
});
setInterval(function () {
checkContent();
}, 10000);
$("#npArama").focusout(function () {
if ($(this).val() == '') {
$("#npShares").html("");
lastStack = 0;
loadContent();
}
});
$(".avatar").popup({
on: 'hover'
});
});
function loadContent() {
$("#npLoadMore").addClass('loading');
$.post("http://www.evdeneve.gen.tr/_endpoint/defter.php?action=load", {
lastStackID: lastStack
}, function (response) {
if (response.success == true) {
$("#npShares").append(response.data);
$("#npLoadMore").removeClass('loading');
$('.npDefterLogButon').popup();
if (response.last > lastID) {
lastID = response.last;
}
}
}, "json");
lastStack++;
}
function checkContent() {
$.post("http://www.evdeneve.gen.tr/_endpoint/defter.php?action=check", {
lastID: lastID
}, function (response) {
if (response.success == true) {
$("#npShares").prepend(response.data);
$("#npShares .segment").first().transition('flash');
$('.npDefterLogButon').popup();
lastID = response.last;
}
}, "json");
}
</script>
Bunun nedeni ajax ile sayfayı yenilemeden sadece <div class="content"></div> içeriğini değiştiriyor.
Bu tarz konularda bende takıntılıyım ama daha önemli sıkıntılar var bence cevabı düzenleme özelliğinin olmaması gibi :D
Apache serverda rewrite_module özelliği aktif mi?
bunla alakalı değilse .htaccess dosyası hatalı olabilir tekrar oluşturup dene.
https://www.youtube.com/watch?v=MQoXH9yNUyo&ab_channel=PROTOTURK
FIND_IN_SET ile yapabilirsin.
foreach($xml->product as $product){
$i = 0;
foreach($product->resimler as $resim){
$i++;
}
echo $i;
}
bunu dene
SELECT `user`.*, `chat`.* FROM `user` INNER JOIN `chat` ON `user`.`id` = `chat`.`gonderen_id` ORDER BY `chat`.`chat_tarih` DESC
$context = stream_context_create(array('ssl' => array('header' => 'Accept: application/xml')));
$url = 'https://kosekayalar-1.dia.com.tr/b2c_xml?key=6ixVFCSWNOO2HnU9Ljct';
$xml = file_get_contents($url, false, $context);
$xml = simplexml_load_string($xml);
foreach($xml->product as $product){
$stok_kodu = $product->stok_kodu;
$title = $product->title;
$description = $product->description;
$keywords = $product->keywords;
$stok_miktari = $product->stok_miktari;
echo "Stok Kodu: $stok_kodu<br>Title: $title<br>Description: $description<br>Keywords: $keywords<br>Stok Miktarı: $stok_miktari";
}
override ile yapmana gerek yok bence bu şekilde çözebilirsin meseleyi
public function test($deger){
if(is_int($deger)){
echo "int geldi";
} else if(is_string($deger)){
echo "string geldi";
} else if(is_float($deger)){
echo "float";
}
}