I am totally lost as to what is wrong with my script. The JSON data is coming in correctly and the variables $i and $current are all what they should be at every stage in the forloop.
It seems to keep updating my database with the id, so in the case where id is 11, it will update all columns with the number 11.
Here is my script:
if($mode == 'SAVE_BUYING_ROW')
{
$JSON = (array)$JSON ;
include('pdoconnect.php') ;
$result = $dbh->prepare("UPDATE parts_trading_instructions
SET quantity = ?, supplierRef = ?, currencyRef = ?,
net = ?, vat = ?, shippingNet = ?,
shippingVat = ?, direct = ?, ebayItemNumber = ?
WHERE id = ?") ;
$i = 0 ;
foreach($JSON as $current) {
$current = (string)$current ;
if($i == 0)
{
$i++ ;
continue ;
}
$result->bindParam($i, $current, PDO::PARAM_STR) ;
$i++ ;
}
$result->execute() ;
}
Can anyone see where I am going wrong?