|
@@ -761,7 +761,7 @@ class ImportXlsx extends ModeleImports
|
|
}
|
|
}
|
|
if ($val == 'user->id') {
|
|
if ($val == 'user->id') {
|
|
$listfields[] = preg_replace('/^' . preg_quote($alias, '/') . '\./', '', $key);
|
|
$listfields[] = preg_replace('/^' . preg_quote($alias, '/') . '\./', '', $key);
|
|
- $listvalues[] = $user->id;
|
|
|
|
|
|
+ $listvalues[] = ((int) $user->id);
|
|
} elseif (preg_match('/^lastrowid-/', $val)) {
|
|
} elseif (preg_match('/^lastrowid-/', $val)) {
|
|
$tmp = explode('-', $val);
|
|
$tmp = explode('-', $val);
|
|
$lastinsertid = (isset($last_insert_id_array[$tmp[1]])) ? $last_insert_id_array[$tmp[1]] : 0;
|
|
$lastinsertid = (isset($last_insert_id_array[$tmp[1]])) ? $last_insert_id_array[$tmp[1]] : 0;
|
|
@@ -772,7 +772,7 @@ class ImportXlsx extends ModeleImports
|
|
} elseif (preg_match('/^const-/', $val)) {
|
|
} elseif (preg_match('/^const-/', $val)) {
|
|
$tmp = explode('-', $val, 2);
|
|
$tmp = explode('-', $val, 2);
|
|
$listfields[] = preg_replace('/^' . preg_quote($alias, '/') . '\./', '', $key);
|
|
$listfields[] = preg_replace('/^' . preg_quote($alias, '/') . '\./', '', $key);
|
|
- $listvalues[] = "'" . $tmp[1] . "'";
|
|
|
|
|
|
+ $listvalues[] = "'" . $this->db->escape($tmp[1]) . "'";
|
|
} else {
|
|
} else {
|
|
$this->errors[$error]['lib'] = 'Bad value of profile setup ' . $val . ' for array_import_fieldshidden';
|
|
$this->errors[$error]['lib'] = 'Bad value of profile setup ' . $val . ' for array_import_fieldshidden';
|
|
$this->errors[$error]['type'] = 'Import profile setup';
|
|
$this->errors[$error]['type'] = 'Import profile setup';
|
|
@@ -793,7 +793,7 @@ class ImportXlsx extends ModeleImports
|
|
// We do SELECT to get the rowid, if we already have the rowid, it's to be used below for related tables (extrafields)
|
|
// We do SELECT to get the rowid, if we already have the rowid, it's to be used below for related tables (extrafields)
|
|
|
|
|
|
if (empty($lastinsertid)) { // No insert done yet for a parent table
|
|
if (empty($lastinsertid)) { // No insert done yet for a parent table
|
|
- $sqlSelect = 'SELECT rowid FROM ' . $tablename;
|
|
|
|
|
|
+ $sqlSelect = "SELECT rowid FROM " . $tablename;
|
|
|
|
|
|
$data = array_combine($listfields, $listvalues);
|
|
$data = array_combine($listfields, $listvalues);
|
|
$where = array();
|
|
$where = array();
|
|
@@ -804,7 +804,7 @@ class ImportXlsx extends ModeleImports
|
|
$where[] = $key . ' = ' . $data[$key];
|
|
$where[] = $key . ' = ' . $data[$key];
|
|
$filters[] = $col . ' = ' . $data[$key];
|
|
$filters[] = $col . ' = ' . $data[$key];
|
|
}
|
|
}
|
|
- $sqlSelect .= ' WHERE ' . implode(' AND ', $where);
|
|
|
|
|
|
+ $sqlSelect .= " WHERE " . implode(' AND ', $where);
|
|
|
|
|
|
$resql = $this->db->query($sqlSelect);
|
|
$resql = $this->db->query($sqlSelect);
|
|
if ($resql) {
|
|
if ($resql) {
|
|
@@ -831,12 +831,12 @@ class ImportXlsx extends ModeleImports
|
|
// a direct insert into subtable extrafields, but when me wake an update, the insertid is defined and the child record
|
|
// a direct insert into subtable extrafields, but when me wake an update, the insertid is defined and the child record
|
|
// may already exists. So we rescan the extrafield table to know if record exists or not for the rowid.
|
|
// may already exists. So we rescan the extrafield table to know if record exists or not for the rowid.
|
|
// Note: For extrafield tablename, we have in importfieldshidden_array an enty 'extra.fk_object'=>'lastrowid-tableparent' so $keyfield is 'fk_object'
|
|
// Note: For extrafield tablename, we have in importfieldshidden_array an enty 'extra.fk_object'=>'lastrowid-tableparent' so $keyfield is 'fk_object'
|
|
- $sqlSelect = 'SELECT rowid FROM ' . $tablename;
|
|
|
|
|
|
+ $sqlSelect = "SELECT rowid FROM " . $tablename;
|
|
|
|
|
|
if (empty($keyfield)) {
|
|
if (empty($keyfield)) {
|
|
$keyfield = 'rowid';
|
|
$keyfield = 'rowid';
|
|
}
|
|
}
|
|
- $sqlSelect .= ' WHERE ' . $keyfield . ' = ' .((int) $lastinsertid);
|
|
|
|
|
|
+ $sqlSelect .= "WHERE " . $keyfield . " = " .((int) $lastinsertid);
|
|
|
|
|
|
$resql = $this->db->query($sqlSelect);
|
|
$resql = $this->db->query($sqlSelect);
|
|
if ($resql) {
|
|
if ($resql) {
|
|
@@ -858,19 +858,19 @@ class ImportXlsx extends ModeleImports
|
|
|
|
|
|
if (!empty($lastinsertid)) {
|
|
if (!empty($lastinsertid)) {
|
|
// Build SQL UPDATE request
|
|
// Build SQL UPDATE request
|
|
- $sqlstart = 'UPDATE ' . $tablename;
|
|
|
|
|
|
+ $sqlstart = "UPDATE " . $tablename;
|
|
|
|
|
|
$data = array_combine($listfields, $listvalues);
|
|
$data = array_combine($listfields, $listvalues);
|
|
$set = array();
|
|
$set = array();
|
|
foreach ($data as $key => $val) {
|
|
foreach ($data as $key => $val) {
|
|
$set[] = $key . ' = ' . $val;
|
|
$set[] = $key . ' = ' . $val;
|
|
}
|
|
}
|
|
- $sqlstart .= ' SET ' . implode(', ', $set);
|
|
|
|
|
|
+ $sqlstart .= " SET " . implode(', ', $set);
|
|
|
|
|
|
if (empty($keyfield)) {
|
|
if (empty($keyfield)) {
|
|
$keyfield = 'rowid';
|
|
$keyfield = 'rowid';
|
|
}
|
|
}
|
|
- $sqlend = ' WHERE ' . $keyfield . ' = '.((int) $lastinsertid);
|
|
|
|
|
|
+ $sqlend = " WHERE " . $keyfield . " = ".((int) $lastinsertid);
|
|
|
|
|
|
$sql = $sqlstart . $sqlend;
|
|
$sql = $sqlstart . $sqlend;
|
|
|
|
|
|
@@ -891,17 +891,17 @@ class ImportXlsx extends ModeleImports
|
|
// Update not done, we do insert
|
|
// Update not done, we do insert
|
|
if (!$error && !$updatedone) {
|
|
if (!$error && !$updatedone) {
|
|
// Build SQL INSERT request
|
|
// Build SQL INSERT request
|
|
- $sqlstart = 'INSERT INTO ' . $tablename . '(' . implode(', ', $listfields) . ', import_key';
|
|
|
|
- $sqlend = ') VALUES(' . implode(', ', $listvalues) . ", '" . $this->db->escape($importid) . "'";
|
|
|
|
|
|
+ $sqlstart = "INSERT INTO " . $tablename . "(" . implode(", ", $listfields) . ", import_key";
|
|
|
|
+ $sqlend = ") VALUES(" . implode(', ', $listvalues) . ", '" . $this->db->escape($importid) . "'";
|
|
if (!empty($tablewithentity_cache[$tablename])) {
|
|
if (!empty($tablewithentity_cache[$tablename])) {
|
|
- $sqlstart .= ', entity';
|
|
|
|
- $sqlend .= ', ' . $conf->entity;
|
|
|
|
|
|
+ $sqlstart .= ", entity";
|
|
|
|
+ $sqlend .= ", " . $conf->entity;
|
|
}
|
|
}
|
|
if (!empty($objimport->array_import_tables_creator[0][$alias])) {
|
|
if (!empty($objimport->array_import_tables_creator[0][$alias])) {
|
|
- $sqlstart .= ', ' . $objimport->array_import_tables_creator[0][$alias];
|
|
|
|
- $sqlend .= ', ' . $user->id;
|
|
|
|
|
|
+ $sqlstart .= ", " . $objimport->array_import_tables_creator[0][$alias];
|
|
|
|
+ $sqlend .= ", " . $user->id;
|
|
}
|
|
}
|
|
- $sql = $sqlstart . $sqlend . ')';
|
|
|
|
|
|
+ $sql = $sqlstart . $sqlend . ")";
|
|
//dol_syslog("import_xlsx.modules", LOG_DEBUG);
|
|
//dol_syslog("import_xlsx.modules", LOG_DEBUG);
|
|
|
|
|
|
// Run insert request
|
|
// Run insert request
|