I searched on stack and try to apply many solutions i found, but not a single is working with this one.
I have a problem with this query because ON DUPLICATE KEY UPDATE is INSERT new results instead of updating existing ones.
INSERT INTO signal_providers_relations (
id,
client_id,
provider_id,
active_sp,
subscription_sp,
created_by,
cr_datetime,
ea_settings_active_sp,
ea_settings_sp,
up_datetime,
sp_risk_allocation,
sp_max_trades )
VALUES (
'',
'".$user_id."',
'".$r['provider_id']."',
'".$r['active_sp']."',
'".$r['subscription_sp']."',
'".$r['created_by']."',
'".$r['cr_datetime']."',
'".$r['ea_settings_active_sp']."',
'".$r['ea_settings_sp']."',
'".$r['up_datetime']."',
'".$r['sp_risk_allocation']."',
'".$r['sp_max_trades']."'
)
ON DUPLICATE KEY
UPDATE
id = '".$r['id']."'
client_id = '".$user_id."',
provider_id = '".$r['provider_id']."',
active_sp = '".$r['active_sp']."',
subscription_sp = '".$r['subscription_sp']."',
created_by = '".$r['created_by']."',
cr_datetime = '".$r['cr_datetime']."',
ea_settings_active_sp = '".$r['ea_settings_active_sp']."',
ea_settings_sp = '".$r['ea_settings_sp']."',
up_datetime = '".$r['up_datetime']."',
sp_risk_allocation = '".$r['sp_risk_allocation']."',
sp_max_trades = '".$r['sp_max_trades']."'
Here is a image with table structure