Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] SOAP i Ciastko
Forum PHP.pl > Forum > PHP
grzes999
Mam za zadanie stworzyć WebService obsługujący Wirtualny Koszyk serwisu przelewy24
Więcej informacji:klik
I wszystko działa jednak potrzebuję odczytać ciastko, które mam zapisane i niestety nie mogę :/
Normalnie ciastko jest odczytywane; a w funkcji klienta SOAP już nie.

Ciastko zapisuję w innym pliku podczas wejścia na moją stroną tak:

  1. setcookie("ref", $value,time()+3600);

sazian
ciastka są zapisywane w przeglądarkach nie na serwerach
uprzedzając Twoje kolejne pytanie, sesja również nie zadziała
em1X
Cytat(grzes999 @ 19.12.2013, 13:39:02 ) *
Mam za zadanie stworzyć WebService obsługujący Wirtualny Koszyk serwisu przelewy24
Więcej informacji:klik
I wszystko działa jednak potrzebuję odczytać ciastko, które mam zapisane i niestety nie mogę :/
Normalnie ciastko jest odczytywane; a w funkcji klienta SOAP już nie.


Można zobaczyć coś kodu i dowiedzieć się, co właściwie próbujesz osiągnąć?
Sephirus
Jeśli potrzebujesz wysłać ciasteczko wraz z requestem SOAP w PHP to najłatwiej poprzez tę metodę klienta. Po drugiej stronie (na serwerze) normalnie będzie ono dostepne w tablicy $_COOKIE
grzes999
Probelm z cookie już rozwiązany. Nie sa mi już potrzebne smile.gif NAtoamsit mam inny problem. Otóż chcę dodać w programie afialcyjnym sprzedaż. i jezeli wykonuję poniższy kod w osobnym pliku to wszystko jest ok.

  1. $response = '{"name":"Jan","City":"Lublin","post_code":"20-850","country":"Polska","street":"Lwowska","house_no":"15"
  2. ,"app_no":"5","email":"marek@mail.com","phone":"123654789","order":[{"name":"dziekiphp","number":"2","amount":"150"}]}';
  3.  
  4. $json = json_decode($response);
  5.  
  6. include 'phpincludes/PapApi.class.php';
  7. $saleTracker = new Pap_Api_SaleTracker('URL_PAP/scripts/sale.php',true);
  8. for($i=0;$i<count($json->order);$i++)
  9. {
  10. $saleTracker->setAccountId('default1');
  11. $sale2 = $saleTracker->createSale();
  12. $sale2->setTotalCost($json->order[$i]->number * $json->order[$i]->amount);
  13. $sale2->setProductID($json->order[$i]->name);
  14. $saleTracker->register();
  15. }


Jednak gdy ten sam kod chcę wykonać w pliku do którego przeysłane jest żadanie z przelewy24 nic się nie dzieje. Cały kod pliku do kórego idzie żądanie z przelewy24.

  1. ini_set('soap.wsdl_cache_enabled', 0);
  2. ini_set('soap.wsdl_cache_limit', 0);
  3. function execOK($login,$password,$order)
  4. {
  5. if('LOGIN' != $login or 'KLUCZ_API' != $password)
  6. {
  7. return false;
  8. }
  9. else
  10. {
  11. $json = json_decode($order);
  12. include 'phpincludes/PapApi.class.php';
  13. $saleTracker = new Pap_Api_SaleTracker('URL_PAP/scripts/sale.php'
  14. ,true);
  15. for($i=0;$i<count($json->order);$i++) {
  16. $saleTracker->setAccountId('default1');
  17. $sale2 = $saleTracker->createSale();
  18. $sale2->setTotalCost($json->order[$i]->number * $json->order[$i]->amount);
  19. $sale2->setProductID($json->order[$i]->name);
  20. file_put_contents("cos.txt",print_r($saleTracker->register(),true));
  21. // zapisuje do pliku czy sprzedaż została dodan i zawsze plik jest pusty
  22. }
  23. }
  24. }
  25. $o_server=new SoapServer('http://irbis-studio.pl/projekty/integrator/thankyou.wsdl'
  26. ,array('soap_version' => SOAP_1_2,'trace' => 1));
  27. $o_server->addFunction('execOK');
  28. $o_server->handle();


Struktura zmiennej $order jest taka sama w testach jak ta, którą otrzymuję z przelewy24.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.