// save user attributes
$values = '';
$valuesFields = '';
$preparedFieldNames = '';
$preparedTableFields = '';
if(is_array($efreg_inputs_opt)){
$k=0;
foreach($efreg_inputs_opt as $name => $value) {
$valuesFields[] = $name;
$values[] = trim($value);
$values[$k] = "'" . $values[$k] . "'";
$k++;
}
$preparedFieldNames = ", " . implode(', ', $valuesFields);
$preparedTableFields = ", " . implode(', ',$values);
}
$sql = "INSERT INTO ".$modx->getFullTableName("web_user_attributes")." (internalKey, fullname, email $preparedFieldNames)
VALUES($key, '$fullname', '$email' $preparedTableFields);";if ($_POST[$input_prefix.'country']) $country = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'country'])); if ($_POST[$input_prefix.'state']) $state = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'state'])); if ($_POST[$input_prefix.'zip']) $zip = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'zip'])); if ($_POST[$input_prefix.'phone']) $efreg_inputs_opt['phone'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'phone'])); if ($_POST[$input_prefix.'mobilephone']) $efreg_inputs_opt['mobilephone'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'mobilephone'])); if ($_POST[$input_prefix.'dob']) $efreg_inputs_opt['dob'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'dob'])); if ($_POST[$input_prefix.'gender']) $efreg_inputs_opt['gender'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'gender'])); if ($_POST[$input_prefix.'fax']) $efreg_inputs_opt['fax'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'fax'])); if ($_POST[$input_prefix.'photo']) $efreg_inputs_opt['photo'] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.'photo'])); if ($_POST[$input_prefix.'comment']) $efreg_inputs_opt['comment'] = $modx->db->escape($_POST[$input_prefix.'comment']);
$efreg_extra_inputs = array('country','state','zip','phone','mobilephone','dob','gender','fax','photo','comment');
foreach($efreg_extra_inputs as $input => $putInArray){
if($_POST[$input_prefix.$input]){
$efreg_inputs_opt[$input] = $modx->db->escape($modx->stripTags($_POST[$input_prefix.$input]));
}
}
This was the problem Soshite also was exposed to.
