Sorry, I know English very badly, but I think, that error in 1.6.1 version can be corrected. Problem of saving TV is result of attempt to replace numerical field by non-numerical value. MySQL error for site_tmplvar_contentvalues: Incorrect integer value: ’’ for column ’id’ (SQL: REPLACE INTO `<correct path>site_tmplvar_contentvalues` (id, tmplvarid, contentid, value) VALUES (
’’, 1, 11, ’xxxx’)).
For solving:
Find problem file:
manager/processors/save_content.processor.php
Problem in line:
$tvChanges[] = '(\''.$tvIds[$tvId].'\', '.$tvId.', '.$id.', \''.mysql_escape_string($tvVal).'\')';
It is necessary to replace on:
if ($tvIds[$tvId] == '') $tvIds[$tvId]="NULL";
else $tvIds[$tvId]='\''.$tvIds[$tvId].'\'';
$tvChanges[] = '('.$tvIds[$tvId].', '.$tvId.', '.$id.', \''.mysql_escape_string($tvVal).'\')';
New SQL (TV are saving):
REPLACE INTO `<correct path>site_tmplvar_contentvalues` (id, tmplvarid, contentid, value) VALUES (
NULL, 1, 11, ’xxxx’)
Or I do not understand something?