$query
".$connect->ErrorMsg());
$optionElements = '';
$queryCheckColumnsActive = "SELECT * FROM {$dbprefix}survey_{$surveyid} ";
$resultActive = db_execute_num($queryCheckColumnsActive) or safe_die("Error:
$query
".$connect->ErrorMsg());
$countActive = $resultActive->FieldCount();
while ($row = $result->FetchRow())
{
$queryCheckColumnsOld = "SELECT * FROM {$row[0]} ";
$resultOld = db_execute_num($queryCheckColumnsOld) or safe_die("Error:
$query
".$connect->ErrorMsg());
if($countActive== $resultOld->FieldCount())
{
$optionElements .= "\t\t\t\n";
}
}
//Get the menubar
$importoldresponsesoutput = browsemenubar($clang->gT("Quick statistics"));
$importoldresponsesoutput .= "
";
}
elseif (isset($surveyid) && $surveyid && isset($oldtable))
{
$activetable = "{$dbprefix}survey_$surveyid";
//Fields we don't want to import
$dontimportfields = array(
//,'otherfield'
);
$aFieldsOldTable=array_values($connect->MetaColumnNames($oldtable, true));
$aFieldsNewTable=array_values($connect->MetaColumnNames($activetable, true));
// Only import fields where the fieldnames are matching
$aValidFields=array_intersect($aFieldsOldTable,$aFieldsNewTable);
// Only import fields not being in the $dontimportfields array
$aValidFields=array_diff($aValidFields,$dontimportfields);
$queryOldValues = "SELECT ".implode(", ",array_map("db_quote_id",$aValidFields))." FROM {$oldtable} ";
$resultOldValues = db_execute_assoc($queryOldValues) or safe_die("Error:
$queryOldValues
".$connect->ErrorMsg());
$iRecordCount=$resultOldValues->RecordCount();
$aSRIDConversions=array();
while ($row = $resultOldValues->FetchRow())
{
$iOldID=$row['id'];
unset($row['id']);
$sInsertSQL="INSERT into {$activetable} (".implode(",",array_map("db_quote_id",array_keys($row))).") VALUES (".implode(",",array_map("db_quoteall",array_values($row))).")";
$result = $connect->Execute($sInsertSQL) or safe_die("Error:
$sInsertSQL
".$connect->ErrorMsg());
$aSRIDConversions[$iOldID]=$connect->Insert_Id($activetable,"id");
}
$_SESSION['flashmessage'] = sprintf($clang->gT("%s old response(s) were successfully imported."),$iRecordCount);
$sOldTimingsTable=substr($oldtable,0,strrpos($oldtable,'_')).'_timings'.substr($oldtable,strrpos($oldtable,'_'));
$sNewTimingsTable=db_table_name_nq("survey_{$surveyid}_timings");
if (tableExists(sStripDBPrefix($sOldTimingsTable)) && tableExists(sStripDBPrefix($sNewTimingsTable)) && returnglobal('importtimings')=='Y')
{
// Import timings
$aFieldsOldTimingTable=array_values($connect->MetaColumnNames($sOldTimingsTable, true));
$aFieldsNewTimingTable=array_values($connect->MetaColumnNames($sNewTimingsTable, true));
$aValidTimingFields=array_intersect($aFieldsOldTimingTable,$aFieldsNewTimingTable);
$queryOldValues = "SELECT ".implode(", ",$aValidTimingFields)." FROM {$sOldTimingsTable} ";
$resultOldValues = db_execute_assoc($queryOldValues) or safe_die("Error:
$queryOldValues
".$connect->ErrorMsg());
$iRecordCountT=$resultOldValues->RecordCount();
$aSRIDConversions=array();
while ($row = $resultOldValues->FetchRow())
{
if (isset($aSRIDConversions[$row['id']]))
{
$row['id']=$aSRIDConversions[$row['id']];
}
$sInsertSQL="INSERT into {$sNewTimingsTable} (".implode(",",array_map("db_quote_id",array_keys($row))).") VALUES (".implode(",",array_map("db_quoteall",array_values($row))).")";
$result = $connect->Execute($sInsertSQL) or safe_die("Error:
$sInsertSQL
".$connect->ErrorMsg());
}
$_SESSION['flashmessage'] = sprintf($clang->gT("%s old response(s) and according timings were successfully imported."),$iRecordCount,$iRecordCountT);
}
$importoldresponsesoutput = browsemenubar($clang->gT("Quick statistics"));
}
?>