https://www.ticimax.com/dokumanlar/webservis.pdf
Ticimax — это программное обеспечение для электронной коммерции в Турции. Я пытаюсь создавать продукты, используя их веб-сервис для одного из моих клиентов. Я использовал все их методы веб-сервиса. Но я застрял с их методом создания продукта «SaveUrunMsgstr «Поскольку этот метод имеет только одну вещь, отличную от других методов. Этот метод принимает параметр как ссылка
Метод SaveUrun находится в документе со страницы 7 по страницу 9.
Если вы посмотрите на страницу 9, вы увидите эту строку в конце определения метода:
urunServis.SaveUrun("U15saQ48dW453X1cA", ref urunKartlari, ukAyar, varyasyonAyar);
urunKartlari передается как ссылка.
Что такое реф? Что это означает? Что эквивалентно этому в PHP? Как я могу заставить мой код работать? Не могли бы вы мне помочь?
Вот что я получаю, когда делаю SOAP-вызов:
Значение не может быть нулевым. Имя параметра: источник
Вот мой пример кода:
<?php
$ticimax = new SoapClient("http://www.CLIENTDOMAIN.com/Servis/UrunServis.svc?wsdl");
$kategoriler = array();
$urunResimleri = array();
$varyasyonlar = array(
array(
"ID" => 0,
"Aktif" => false,
"AlisFiyati" => 10,
"Barkod" => "",
"Desi" => 1,
"KargoUcreti" => 0,
"KdvDahil" => true,
"KdvOrani" => 8,
"Ozellikler" => array(
array(
"Tanim" => "Numara",
"Deger" => 38
),
array(
"Tanim" => "Renk",
"Deger" => "Mavi")
),
"ParaBirimiID" => 1,
"Resimler" => array(),
"SatisFiyati" => 100,
"StokAdedi" => 15,
"StokKodu" => ""),
array(
"ID" => 0,
"Aktif" => false,
"AlisFiyati" => 10,
"Barkod" => "",
"Desi" => 1,
"KargoUcreti" => 0,
"KdvDahil" => true,
"KdvOrani" => 8,
"Ozellikler" => array(
array(
"Tanim" => "Numara",
"Deger" => 40
),
array(
"Tanim" => "Renk",
"Deger" => "Mavi")
),
"ParaBirimiID" => 1,
"Resimler" => array(),
"SatisFiyati" => 100,
"StokAdedi" => 15,
"StokKodu" => "")
);
$urunKarti = array(
"ID" => 0,
"Aktif" => false,
"UrunAdi" => "Test ürün adı",
"Aciklama" => "Test ürün açıklama",
"AnaKategori" => "İç Giyim",
"AnaKategoriID" => 1,
"Kategoriler" => $kategoriler,
"MarkaID" => 1,
"TedarikciID" => 1,
"Resimler" => $urunResimleri,
"SatisBirimi" => "Adet",
"UcretsizKargo" => false,
"OnYazi" => "Test ürün önyazı",
"PuanDeger" => 12,
"SeoAnahtarKelime" => "",
"SeoSayfaAciklama" => "",
"SeoSayfaBaslik" => "",
"Varyasyonlar" => $varyasyonlar,
"Vitrin" => false,
"YeniUrun" => false
);
$params = array(
array(
"UyeKodu" => WEBSERVICE_PASSWORD,
"UrunKartlari" => $urunKarti,
"ukAyar" => array(
"AciklamaGuncelle" => true,
"AktifGuncelle" => true,
"FBStoreGosterGuncelle" => false,
"FirsatUrunuGuncelle" => true,
"KategoriGuncelle" => false,
"MaksTaksitSayisiGuncelle" => false,
"MarkaGuncelle" => false,
"OnYaziGuncelle" => false,
"ParaPuanGuncelle" => true,
"SatisBirimiGuncelle" => false,
"SeoAnahtarKelimeGuncelle" => false,
"SeoSayfaAciklamaGuncelle" => false,
"SeoSayfaBaslikGuncelle" => false,
"TedarikciGuncelle" => false,
"UcretsizKargoGuncelle" => true,
"UrunAdiGuncelle" => true,
"UrunResimGuncelle" => false,
"VitrinGuncelle" => false,
"YeniUrunGuncelle" => true
),
"vAyar" => array(
"AktifGuncelle" => false,
"AlisFiyatiGuncelle" => true,
"BarkodGuncelle" => false,
"IndirimliFiyatiGuncelle" => true,
"KargoUcretiGuncelle" => false,
"KargoAgirligiGuncelle" => true,
"ParaBirimiGuncelle" => false,
"PiyasaFiyatiGuncelle" => true,
"SatisFiyatiGuncelle" => false,
"StokAdediGuncelle" => true,
"UyeTipiFiyat1Guncelle" => false,
"UyeTipiFiyat2Guncelle" => true,
"UyeTipiFiyat3Guncelle" => false,
"UyeTipiFiyat4Guncelle" => true,
"UyeTipiFiyat5Guncelle" => false,
"TedarikciKodunaGoreGuncelle" => false
)
)
);
try{
print_r($ticimax->__soapCall("SaveUrun", $params));
}
catch(Exception $e){
echo $e->getMessage();
}
?>
Можете ли вы исправить мой код?
Задача ещё не решена.
Других решений пока нет …