PeterFrank Posted February 4, 2014 Share Posted February 4, 2014 Hello, I'm hoping someone may be able to help me. I have a php shopping cart (zen cart to be exact) and I have a web service that someone helped me write to allow retrieval of data from the MYSQL database to be used by an external website built in .net (I am a .net developer). Anyway, the current web service only allows "reading" of data which is working fine, however now I would like to add an extra function that would allow the external site to update the stock levels in the Zen Cart's mysql database via a web service call. This is what I have curently : <?php require 'includes/configure.php'; error_reporting(0); class stephin { function __construct($hostname,$dbuser,$dbpass,$dbname) { global $config; if(!$this->dblink) { if($this->dblink=mysql_connect($hostname,$dbuser,$dbpass)){ if(mysql_select_db($dbname,$this->dblink)){ return $this->dblink; }else{ die("Database cant be selected."); return false; } } else{ die("No database connection"); return $this->dblink; } } else{ return $this->dblink; } } function select($query){ $result2=mysql_query($query,$this->dblink); $result3=mysql_num_rows($result2); if($result3 > 0){ while($row=mysql_fetch_object($result2)){ if($row){ $result[] = $row; } } return $result; } return false; } } $db = new stephin(DB_SERVER,DB_SERVER_USERNAME,DB_SERVER_PASSWORD,DB_DATABASE); $id=$_GET[id]; $action=$_GET[action]; if($action=="GetProductDetails") { $data=$db->select("select zen_products_description.products_id,zen_products.products_model,zen_products_description.products_name,zen_products.products_status,zen_products.products_price,zen_products.products_quantity,zen_products.products_weight,zen_products.product_is_always_free_shipping as free_shipping,zen_products.products_sort_order as sort_order,zen_products.master_categories_id as categories_id,zen_products_description.products_description,zen_products.products_image from zen_products_description inner join zen_products on zen_products.products_id= zen_products_description.products_id where zen_products.products_id=$id"); } if($action=="GetProductList") { $data=$db->select("select zen_products_description.products_id,zen_products.products_model,zen_products_description.products_name,zen_products.products_status,zen_products.products_quantity,zen_products.products_price,zen_products.products_weight,zen_products.products_sort_order as sort_order,zen_products.master_categories_id as categories_id from zen_products_description inner join zen_products on zen_products.products_id= zen_products_description.products_id order by zen_products_description.products_id"); } echo json_encode($data); ?> I have figured out that I will need something like this: $prod_id = $_GET['prod_id']; $prod_qty = $_GET['prod_qty']; $sql = "UPDATE zen_products SET products_quantity = $prod_qty WHERE products_id = $prod_id" ; mysql_select_db('test_db'); $retval = mysql_query( $sql, $conn ); if(! $retval ) { die('Could not update data: ' . mysql_error()); } echo "Updated data successfully\n"; mysql_close($conn); } But I am just not sure how to glue it together with the existing code I have. In addition I would also like to make sure that the quantity cannot be updated to a value less than zero. Obviously I also have security issues to consider but I will worry about that once I can get this working. Thanks in advance. Quote Link to comment https://forums.phpfreaks.com/topic/285920-updating-mysql-data-via-php-webservice-call/ Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.