Diskuze: PPL soap WSDL problem
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 19 zpráv z 19.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
$client = new SoapClient("http://www.ppl.cz/IEGAte/IEGate.asmx?WSDL");
Ahoj, dekuju za rychlou odpoved, ale nevidim rozdil:
<?php
try {
$parametry = array(
'FirCode' => "RA01580078",
'SendNAme' => "honza novak",
'SendStreet' => "ulice 123",
'SendCity' => "mesto",
'SendZipCode' => "12300"
);
//$client = new SoapClient("http://www.ppl.cz/IEGate/IEGate.asmx?WSDL");
$client = new SoapClient("http://www.ppl.cz/IEGAte/IEGate.asmx?WSDL");
$client->ImportOrderExt($parametry);
} catch (Exception $e) {
echo "<h2>Exception Error!</h2>";
echo $e->getMessage();
}
?>
a
$client = new SoapClient("http://www.ppl.cz/IEGAte/IEGate.asmx?WSDL");
Kdyz jsem si to ted copy&paste doma odtud, tak mi to tam nahazelo ty pomlcky jeste u ImportOrder-Ext, ale v puvodni zprave to neni.
$client->ImportOrderExt($parametry);
Koukal jsem na oficiální dokumentaci a možná vidím rozdíl. Nepatří zde spíš "ImportOrdersExt"?
Vycházím z této dokumentace:
http://www.ppl.cz/…/IEGate.asmx
První kód, co jsi posílal, obsahuje whitespace, takže se to tvářilo jako neplatné URL, moji první odpověď můžeš ignorovat. Pokud pracuješ s webovými službami, je nejlepší si to vždy nejprve ověřit v prohlížeči.
Chyba "Object reference not set to an instance of an object" znamená, že to padá na straně serveru.
Tipnu si, že ti chybí povinné parametry, jako třeba SendDateFrom a
SendDateTo.
Podívej se na jejich dokumentaci a zkontroluj si seznam povinných
položek.
dekuju za reakci. Nene, oboji je platne:
ImportOrderExt
Rozšířený import objednávky.
To bych uplne netipoval, samozrejme muzu vyzkouset doplnit.
Tahle chyba na googlu vyhodi miliardu ruznejch veci na stackowerflow apod a
prave se mi v tom nedari zorientovat, vsude se pise neco hrozne slozityho 
Typu ze mam posilat objekt ale posilam array, nebo obracene, vubec z toho nejsem moudrej prave.
Moc dekuju, ze mi pomahas
hm hm, neni mozny ze je chyba, ze posilam array misto xml objektu viz dokumentace? (http://www.ppl.cz/…/IEGate.asmx?…)
Pripadne ze to ma bejt array v arrayi viz dokumentace.
jsem z toho fakt jelen 
Psal jsem i na podporu IT od PPL, jestli nemaji nejakou vzorovou tridu nebo neco, pry to predali a budou me kontaktovat. Tak to jsem zvedavej, jak velkou "podporu" od nich dostanu. Pokud bych neco zjistil, obratem sem doplnim samozrejme.
Zkousel jsem taky najit nejakej zdarma modul pro nekterej z opensource eshopu, abych tu logiku z toho vytahl, ale zatim vsechno marny a beznadejny.
Kazdopadne pokud se mi toto povede vyresit, i za pomoci od vas, hodim to jako
navrat komunite na github pro ostatni potencialni zajemce, protoze nic podobnyho
jsem nikde neobjevil az me to zarazi, protoze to jiste resila spousta lidi. Na
foru jakpsatweb.cz jsem dokonce vygooglil 6 let starej dotaz na tohle tema, bez
odpovedi 
bohuzel taky nepomaha 
Jeste jsem nasel pro lepsi orientaci takovejhle vycuc co se ma odeslat:
<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ns1="PPLIEGate">
<SOAP-ENV:Body>
<ns1:ImportOrdersExt>
<ns1:FirCode>?</ns1:FirCode>
<ns1:Orders>
<ns1:Items>
<ns1:anyType>?</ns1:anyType>
</ns1:Items>
<ns1:ErrorCode>0</ns1:ErrorCode>
<ns1:ErrorMessage>?</ns1:ErrorMessage>
</ns1:Orders>
</ns1:ImportOrdersExt>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
Hm hm, zkusim jeste udelat pole items pod orders
Ha tak pozor! Kdyz jsem upravil tu coellsovu radu na sprave Orders misto order, tak uz je posun a rika to SOAP-ERROR: Encoding: object has no 'ErrorCode' property , to vypada slibne!
Vyborne panove, tak coells to rozlouskl!!!
Sice mi to jeste nefunguje, ale tento problem vyresen! Hrozne moc dekuju,
laboroval bych nad tim dalsich nekolik dni a propadal depresi 
Az to budu mit, hodim na GitHub
Sice je to podivné, protože podle schématu tam má být v operaci ImportOrderExt element "order", nikoliv "Orders" (ten má být v operaci ImportOrdersExt), ale hlavně, že ti to funguje.
To je tak, ze se mi pomichaly ty metody, je tam ImportOrdersExt i
ImportOrderExt a jedno ma order a druhy orders
omlouvam se, moje chyba.
Už máš nějaký ten funkční kód? Hodil bys ho na github jak jsi psal?
Ahoj, nemel jsem bohuzel pak uz cas to dodelat a uplne ty prace prerusil ale
budu s tim muset nejak pohnout 
Zobrazeno 19 zpráv z 19.
