ferran_comenz Posted August 29, 2013 Posted August 29, 2013 (edited) Hi all, I am currently trying to run my Prestashop update methods, porting from SQL to CRUD Data Transfer methods. I have seen some online util Tutorials, with this I can prepare the return of a Get to edit and later use in an EDIT, so I can edit the xml with the values that most interest me, such as price, here the code: <html><head><title>CRUD Data Transfer - Update example</title></head><body> <?php // Here we define constants /!\ You need to replace this parameters define('DEBUG', true); define('PS_SHOP_PATH', 'http://XXXXXXX.XXXX'); define('ID_PRODUCT', 512); define('PS_WS_AUTH_KEY', 'XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX'); require_once('./PSWebServiceLibrary.php'); @ini_set('display_errors', 'on'); try { $webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG); $opt = array('resource' => 'products'); $opt['id']=ID_PRODUCT; $xml = $webService->get($opt); echo "Successfully recived data."; /* List of nodes that can't modify * * - "manufacturer_name" * - "position_in_category" * - "quantity" * - "type" */ unset($xml->children()->children()->manufacturer_name); unset($xml->children()->children()->position_in_category); unset($xml->children()->children()->quantity); unset($xml->children()->children()->type); $xml->children()->children()->price = 111.0; // <-- new price! //Load new data to query generator $opt['putXml']=$xml->asXML(); $xml = $webService->edit($opt); // if WebService don't throw an exception the action worked well and we don't show the following message echo "Successfully updated."; } catch (PrestaShopWebserviceException $ex) { // Here we are dealing with errors $trace = $ex->getTrace(); if ($trace[0]['args'][0] == 404) echo 'Bad ID'; else if ($trace[0]['args'][0] == 401) echo 'Bad auth key'; else echo 'Other error<br />'.$ex->getMessage(); } ?> </body></html> And my question is if there's another way to do this but more faster? Thanks. Edited August 29, 2013 by ferran_comenz (see edit history) Share this post Link to post Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now