Проблемы с update из php, прошу помощи

Подскажите по ошибке, пожалуйста
Делаю скрипт для чтения данных из файла и обновления цен в таблице cs-cart. php не знаю совсем. Запрос написала,оттестировала, на mysql работает. Запускаю по крону скрипт - данные не обновляются. Если закомментировать UPDATE - то код исполняется, переменные присваиваются правильно. Подскажите, пожалуйста, что неправильно
Содержимое файла:

19;48751;256
19;'7504';244
19;"12972VPS2";1205

Сам скрипт:

<?php
define('AREA', 'A');
define('ACCOUNT_TYPE', 'admin');

//Парсинг данных из файла и помещение их в один массив
require(dirname(__FILE__) . '/init.php');

  $row = 1;
  if (($handle = fopen("/var/files/1/prices.txt", "r")) !== FALSE) {
  while (($data = fgetcsv($handle, 1000, ";")) !== FALSE) {
    $num = count($data);
        $row++;
    for ($c=0; $c < $num; $c++) {
        $arr[]= $data[$c];
    }
}
fclose($handle);
}   
//Отправка данных массива в базу данных
foreach ($arr as $key => $value) {
      if($key % 3 == 0){
      $luser_group = $arr[$key];
      $key = $key+1;
      $product_code = $arr[$key];
      $key = $key+1;
      $product_price = $arr[$key];      
      $sql_string = db_query('UPDATE ?:product_prices a JOIN ?:products b ON a.product_id = b.product_id SET a.price = ?p WHERE a.usergroup_id = ?s AND b.product_code = "?r"', $product_price, $luser_group, $product_code);
      //$sql_string = db_query('UPDATE ?:product_prices a JOIN ?:products b ON a.product_id = b.product_id SET a.price = ?p WHERE a.usergroup_id = ?s AND b.product_code = ?r', $product_price, $luser_group, $product_code);
    }      
}




Добавлю, такой запрос выполняется:

      $sql_string = db_query('UPDATE ?:product_prices a JOIN ?:products b ON a.product_id = b.product_id SET a.price = ?d WHERE a.usergroup_id = ?i AND b.product_code = ?s', $product_price, $luser_group, $product_code);

Я чувствую, проблема с параметрами. ?s это всегда строки? ?i int, ?d double ?

Посмотрите тут

Еще можете посмотреть финальный запрос таким кодом

fn_print_die(db_quote('UPDATE ?:product_prices a JOIN ?:products b ON a.product_id = b.product_id SET a.price = ?d WHERE a.usergroup_id = ?i AND b.product_code = ?s', $product_price, $luser_group, $product_code));

1 лайк