Forum

Php ile xml veri va...
 
Bildirimler
Hepsini Temizle

Php ile xml veri var ise ekle, yok ise güncelle.

2 Yazılar
2 Üyeler
0 Reactions
610 Görüntüleme
(@HakanSurmeli)
Gönderiler: 2
Active Member
Konu başlatıcı
 

Selamlar,

 

Php yapısı ile; xml ile gelen çoklu bir datayı alıp, mysql tabloma ekleyebiliyorum ve buraya kadar sorun yok. Fakat işin en gülünç tarafı olan; xml datayı eklerken, mükerrer kayıtlı bir id var ise id'nin yanında yer alan diğer kolonları güncelle, yok ise bu yeni ve tekil id'yi kaydet mantığını bir türlü yapamadım

 

Siz üstatlarım olarak, sizce en sağlıklı şekilde bunu nasıl yapabilirim?

 

Bu arada yapabildiğim:

<?php

$con = mysql_connect("localhost","root","123456");
mysql_select_db("test_db") or die (mysql_error());

$doc = new DOMDocument();
$doc->load( 'test.xml' );
$items = $doc->getElementsByTagName( "item" );

foreach( $items as $item )
{
$ids = $item->getElementsByTagName( "ids" );
$barcodes = $item->getElementsByTagName( "barcode" );
$prices = $item->getElementsByTagName( "price" );
$id= $ids->item(0)->nodeValue;
$barcode = $barcodes->item(0)->nodeValue;
$price = $prices->item(0)->nodeValue;

mysql_query("SET CHARACTER SET utf8");
$sql = "INSERT INTO tb_test (id,barcode,price) VALUES ('$id','$barcode','$price')";
@mysql_query($sql);
}
echo "Veriler Basariyla Eklendi!";
?>

 

 
Gönderildi : 15/11/2015 22:19

(@eravse)
Gönderiler: 1753
Üye
 

Merhaba , eklemeden once bir select * from tb_test where id=xyz ile once kayı var lıgını kontrol et

if mysqlnumrows du galıba kayıt sayısı var ıse 0> sıfırdan buyuk ıse o ıd ye update cekeceksın yoksa insert edeceksın yaptıgın gıbı

 

 

ProfectSoft Yazılım ve Danışmanlık Hizmetleri
LogPusher & Bifyou E-Commerce System
www.profectsoft.com

 
Gönderildi : 22/12/2015 01:09

Paylaş: