Probleme ordre copie champs table
Posté : 17 mai 2012, 18:59
Bonjour,
j'ai un composant Joomla/virtuemart qui est sensé me permettre de dupliquer une configuration de frais de port mais quand je l'utilise, les champs sont bien copiés mais l'ordre n'est pas respecté.
Dans la base, j'ai une table qui gère ça sous cette forme (en résumant un peu):
ID (auto increment) // département concerné // euros au kg // debut fourchette poids // fin fourchette poids
EX :
1 // 01 // 2 // 0 // 1
2 // 01 // 1.9 // 1 // 3
3 // 01 // 1.8 // 3 // 5
4 // 01 // 1.7 // 5 // 9
et après copie, je peux me retrouver avec ça :
EX :
6 // 01 // 1.9 // 1 // 3
5 // 01 // 2 // 0 // 1
7 // 01 // 1.8 // 3 // 5
8 // 01 // 1.7 // 5 // 9
J'essaie de trouver d'ou peut venir le problème et la fonction _task_rateduplicate() qui semble faire la copie donne ça :
Je ne vois pas ou est le problème ... quelqu'un aurait-il une idée svp ?
Ps: j'ai 25 paramètres sur 95 départements à faire ... au secours si je ne peux pas dupliquer ...
Par avance merci pour votre aide.
j'ai un composant Joomla/virtuemart qui est sensé me permettre de dupliquer une configuration de frais de port mais quand je l'utilise, les champs sont bien copiés mais l'ordre n'est pas respecté.
Dans la base, j'ai une table qui gère ça sous cette forme (en résumant un peu):
ID (auto increment) // département concerné // euros au kg // debut fourchette poids // fin fourchette poids
EX :
1 // 01 // 2 // 0 // 1
2 // 01 // 1.9 // 1 // 3
3 // 01 // 1.8 // 3 // 5
4 // 01 // 1.7 // 5 // 9
et après copie, je peux me retrouver avec ça :
EX :
6 // 01 // 1.9 // 1 // 3
5 // 01 // 2 // 0 // 1
7 // 01 // 1.8 // 3 // 5
8 // 01 // 1.7 // 5 // 9
J'essaie de trouver d'ou peut venir le problème et la fonction _task_rateduplicate() qui semble faire la copie donne ça :
function _task_rateduplicate() {
$db =& JFactory::getDBO();
$shipping_rate_id = @(int)$_POST['shipping_rate_id'];
if(!empty($shipping_rate_id)) {
$db->Execute('INSERT INTO #__vm_ss_shipping_rate (shipping_rate_name,carrier_id,zone_id,parcel_starting_price,package_fee,currency_id,vat_id,unit,image,zip_start,zip_end,unit_measure,extra_info,zip_exclude,published,fuel_surcharge)
SELECT shipping_rate_name,carrier_id,zone_id,parcel_starting_price,package_fee,currency_id,vat_id,unit,image,zip_start,zip_end,unit_measure,extra_info,zip_exclude,published,fuel_surcharge
FROM #__vm_ss_shipping_rate
WHERE shipping_rate_id='.$shipping_rate_id);
$new_shipping_rate_id = $db->insertid();
if(!empty($new_shipping_rate_id)) {
$db->Execute('INSERT INTO #__vm_ss_shipping_rate_weight ( shipping_rate_id,rate_weight_start,rate_weight_end,rate_value )
SELECT '.$new_shipping_rate_id.',rate_weight_start,rate_weight_end,rate_value
FROM #__vm_ss_shipping_rate_weight
WHERE shipping_rate_id='.$shipping_rate_id);
}
}
return True;
}
et les infos sur insertid() sont là >> http://help.joomla.org/content/view/716/125/Je ne vois pas ou est le problème ... quelqu'un aurait-il une idée svp ?
Ps: j'ai 25 paramètres sur 95 départements à faire ... au secours si je ne peux pas dupliquer ...
Par avance merci pour votre aide.