|
|
18.07.2013, 17:37
|
|
Гость
Гость
|
В интернет магазине через импорт загружаю товар, цены разные, например:
цена стоит в csv 0,69 то есть 69 копеек когда импортирую отображается 0,00
также с другими числами цена в csv 11 900,50 отображается 11900,00
Формат данного поля подразумевает ввод цифр с плавающей запятой. Такое поле можно использовать для ввода цены, когда после запятой нужно ввести копейки либо для ввода точных значений.
Например: 2000,52 руб.
|
|
|
19.07.2013, 10:25
|
|
ipm
Ильин Павел
Зарегистрирован: 2012-10-12
Сообщений: 386
|
Вы уверены, что формат поля установлен, как число с плавающей запятой? Может всё-таки в компоненте используется поле - целое число? А нули просто прописаны в компоненте, поэтому они и подставляются к любому числу. Хотя, если цена 0,69, то по идее целое число будет 1, потому как округлиться должно в большую степень.
Каким образом импортируете товары? Может в коде самого импорта какие-то ошибки?
Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
|
|
|
19.07.2013, 14:34
|
|
Гость
Гость
|
поле Price стоит именно число с плавающей запятой!
файл csv, формат столбца с ценами денежный. перед тем как файл загрузить кдировку меняю в utf-8
импорт происхлдит через файл:
Код:
<?
/* config */
/**********/
$first = 1; // строка с которой начинаются значения
$arFields = array("0"=>"ItemID", "1"=>"Name", "2"=>"Price", "3"=>"Units", "4"=>"GroupName",); // связь столбцов и полей компонента
$sub=122; // id раздела
$cc=239; // id компонента в разделе
$file="kamazzpnew.csv";
$class=232; // id компонента
$control=0; // столбец контроля (начиная с 0)
/**********/
require_once "vars.inc.php";
require $INCLUDE_FOLDER."index.php";
/* обработка csv */
$fp = fopen($file,"r");
while ($data = fgetcsv ($fp, 1000, ";")) {
$i++;
if($i<$first || !trim($data[$control])) continue;
$insert = "INSERT INTO Message$class(";
foreach($arFields as $id=>$key) $insert.="$key,\n";
$insert.="
Subdivision_ID,
Sub_Class_ID,
Checked,
Created
) VALUES(";
foreach($arFields as $id=>$key) $insert.="'".$data[$id]."',\n";
$insert.="
$sub,
$cc,
1,
NOW()
)
ON DUPLICATE KEY UPDATE
ItemID = '$data[0]',
Name = '$data[1]' ,
Price = '$data[2]' ,
Units = '$data[3]' ,
GroupName = '$data[4]'
";
$db->query($insert) or die(mysql_error());
$success++;
}
echo "Обработано. Добавлено $success объектов.";
?>
|
|
|
19.07.2013, 15:30
|
|
ipm
Ильин Павел
Зарегистрирован: 2012-10-12
Сообщений: 386
|
Ошибок каких-то вроде нет. Может в компоненте товара всё-таки что-то где-то не так?
Знание может быть лишь у того, у кого есть вопросы. Ханс Георг Гадамер
|
|
|
19.07.2013, 18:28
|
|
Гость
Гость
|
разобрался! дела в колонке с ценами
10 789,90 ---> импорт без проблем 10789.90 без пробелом и запятую заменил на точку.
|