/Retrieve.php
https://gitlab.com/sutrix.hoa.tran/Research-Prestashop · PHP · 101 lines · 56 code · 7 blank · 38 comment · 11 complexity · 636a3a5c6340838b043b43bdd2414248 MD5 · raw file
- <html><head><title>CRUD Tutorial - Retrieve example</title></head><body>
- <?php
- /*
- * 2007-2013 PrestaShop
- *
- * NOTICE OF LICENSE
- *
- * This source file is subject to the Open Software License (OSL 3.0)
- * that is bundled with this package in the file LICENSE.txt.
- * It is also available through the world-wide-web at this URL:
- * http://opensource.org/licenses/osl-3.0.php
- * If you did not receive a copy of the license and are unable to
- * obtain it through the world-wide-web, please send an email
- * to license@prestashop.com so we can send you a copy immediately.
- *
- * DISCLAIMER
- *
- * Do not edit or add to this file if you wish to upgrade PrestaShop to newer
- * versions in the future. If you wish to customize PrestaShop for your
- * needs please refer to http://www.prestashop.com for more information.
- *
- * @author PrestaShop SA <contact@prestashop.com>
- * @copyright 2007-2013 PrestaShop SA
- * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
- * International Registered Trademark & Property of PrestaShop SA
- * PrestaShop Webservice Library
- * @package PrestaShopWebservice
- */
- // Here we define constants /!\ You need to replace this parameters
- define('DEBUG', true); // Debug mode
- define('PS_SHOP_PATH', 'http://prestashop-research.local'); // Root path of your PrestaShop store
- define('PS_WS_AUTH_KEY', 'L77TLJE2RPDE6UYP4648R873RVWE961D'); // Auth key (Get it in your Back Office)
- require_once('./PSWebServiceLibrary.php');
- // Here we make the WebService Call
- try
- {
- $webService = new PrestaShopWebservice(PS_SHOP_PATH, PS_WS_AUTH_KEY, DEBUG);
- // Here we set the option array for the Webservice : we want customers resources
- $opt['resource'] = 'customers';
- // We set an id if we want to retrieve infos from a customer
- if (isset($_GET['id']))
- $opt['id'] = (int)$_GET['id']; // cast string => int for security measures
- // Call
- $xml = $webService->get($opt);
- // Here we get the elements from children of customer markup which is children of prestashop root markup
- $resources = $xml->children()->children();
- }
- catch (PrestaShopWebserviceException $e)
- {
- // Here we are dealing with errors
- $trace = $e->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 />'.$e->getMessage();
- }
- // We set the Title
- echo '<h1>Customers ';
- if (isset($_GET['id']))
- echo 'Details';
- else
- echo 'List';
- echo '</h1>';
- // We set a link to go back to list if we are in customer's details
- if (isset($_GET['id']))
- echo '<a href="?">Return to the list</a>';
- echo '<table border="5">';
- // if $resources is set we can lists element in it otherwise do nothing cause there's an error
- if (isset($resources))
- {
- if (!isset($_GET['id']))
- {
- echo '<tr><th>Id</th><th>More</th></tr>';
- foreach ($resources as $resource)
- {
- // Iterates on the found IDs
- echo '<tr><td>'.$resource->attributes().'</td><td>'.
- '<a href="?id='.$resource->attributes().'">Retrieve</a>'.
- '</td></tr>';
- }
- }
- else
- {
- foreach ($resources as $key => $resource)
- {
- // Iterates on customer's properties
- echo '<tr>';
- echo '<th>'.$key.'</th><td>'.$resource.'</td>';
- echo '</tr>';
- }
- }
- }
- echo '</table>';
- ?>
- </body></html>