<?php if ($createLink) { foreach ($arrayCSV[0] as $key => $value) { echo '<option value="' . $key . '">' . $value . '</option>'; } } ?> </select> </td> <td> <select id="selectLinkCollection" class="col-sm-12"> <?php if ($createLink) { $params = array("_id" => new MongoId($idCollection)); $fields = array("mappingFields"); $fieldsCollection = ImportData::getMicroFormats($params, $fields); foreach ($fieldsCollection as $key => $value) { $pathMapping = FileHelper::arbreJson($value['mappingFields'], "", ""); $arrayPathMapping = explode(";", $pathMapping); foreach ($arrayPathMapping as $keyPathMapping => $valuePathMapping) { if (!empty($valuePathMapping)) { echo '<option name="optionLinkCollection" value="' . $valuePathMapping . '">' . $valuePathMapping . '</option>'; } } } } ?> </select> </td> <td> <input type="submit" id="addMapping" class="btn btn-primary col-sm-12" value="Ajouter"/>
public static function previewData($post) { /**** new ****/ if (isset($post['infoCreateData']) && isset($post['idCollection']) && isset($post['subFile']) && isset($post['nameFile'])) { $pathSubFile = '../../modules/cityData/filesImportData/' . $post['nameFile'] . '/' . $post['subFile']; $arrayCSV = new SplFileObject($pathSubFile, 'r'); $arrayCSV->setFlags(SplFileObject::READ_CSV); $arrayCSV->setCsvControl(',', '"', '"'); $i = 0; while (!$arrayCSV->eof() && $i == 0) { $arrayHeadCSV = $arrayCSV->fgetcsv(); $i++; } $i = 0; // On parcourt les lignes du CSV foreach ($arrayCSV as $keyCSV => $lineCSV) { // On rejet la premier lignes qui correspond a l'en-tete, et les lignes qui seraient null if ($i > 0 && $lineCSV[0] != null) { if ($i % 500 == 0) { set_time_limit(30); } foreach ($post['infoCreateData'] as $key => $objetInfoData) { //$objetInfoData->idHeadCSV; //$objetInfoData->valueLinkCollection; $valueData = $lineCSV[$objetInfoData['idHeadCSV']]; //var_dump($valueData); if (!empty($valueData)) { $paramsInfoCollection = array("_id" => new MongoId($post['idCollection'])); $fieldsInfoCollection = array("mappingFields." . $objetInfoData['valueLinkCollection']); $infoCollection = ImportData::getMicroFormats($paramsInfoCollection); //var_dump($infoCollection) ; $mappingTypeData = explode(".", $post['idCollection'] . ".mappingFields." . $objetInfoData['valueLinkCollection']); $typeData = FileHelper::get_value_json($infoCollection, $mappingTypeData); /*var_dump($mappingTypeData) ; var_dump($typeData) ; */ $mapping = explode(".", $objetInfoData['valueLinkCollection']); if (isset($jsonData[$mapping[0]])) { if (count($mapping) > 1) { $newmap = array_splice($mapping, 1); $jsonData[$mapping[0]] = FileHelper::create_json_with_father($newmap, $valueData, $jsonData[$mapping[0]], $typeData); } else { $jsonData[$mapping[0]] = $valueData; } } else { if (count($mapping) > 1) { $newmap = array_splice($mapping, 1); $jsonData[$mapping[0]] = FileHelper::create_json($newmap, $valueData, $typeData); } else { $jsonData[$mapping[0]] = $valueData; } } } } $newOrganization = Organization::newOrganizationFromImportData($jsonData); //var_dump($newOrganization); try { $arrayJson[] = Organization::getAndCheckOrganization($newOrganization); } catch (CTKException $e) { $newOrganization["msgError"] = $e->getMessage(); $arrayJsonError[] = $newOrganization; } //var_dump($arrayJson); } $i++; } if (!isset($arrayJson)) { $arrayJson = []; } if (!isset($arrayJsonError)) { $arrayJsonError = []; } $params = array("result" => true, "jsonImport" => json_encode($arrayJson), "jsonError" => json_encode($arrayJsonError)); } else { $params = array("result" => false); } return $params; }