211,7 → 211,7 |
if (isset($p['champs'])) { |
$champs = $this->formaterColonnes($p['champs'], $ref); |
$requete = 'SELECT "'.implode('","', $champs['titre']).'" UNION (SELECT '.implode(', ',$champs['select']). |
" INTO OUTFILE '".$fichier."' CHARACTER SET ".$p['encodage']." FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\n' ". |
" INTO OUTFILE '".$fichier."' CHARACTER SET utf8 FIELDS TERMINATED BY '\t' OPTIONALLY ENCLOSED BY '' LINES TERMINATED BY '\n' ". |
" FROM $ref a left join $ref b on b.num_nom=a.num_nom_retenu"; |
|
|
218,13 → 218,15 |
if (isset($p['filtre']) && $p['filtre'] != "*") { |
$param_filtres = explode(",",$p["filtre"]); |
$dernier_filtre = array_pop($param_filtres); |
$filtres = array("nnr"=>"a.num_nom = a.num_nom_retenu", "pre" => "a.presence = 'P'", |
"snsc" => "a.num_nom_retenu != ''", "qnsc" => "a.num_nom_retenu = ''"); |
if ($dernier_filtre != '' && !isset($filtres[$dernier_filtre])) { // si il s'agit du filtre famille |
$filtres = array("nnr"=>"a.num_nom = a.num_nom_retenu", "pre" => "a.presence = 'P'"); |
if ($dernier_filtre != '' && $dernier_filtre != '*') { |
if (!isset($filtres[$dernier_filtre])) {// si il s'agit du filtre famille |
$filtres["fam"] = "a.famille = '".$dernier_filtre."'"; |
$dernier_filtre = "fam"; |
} |
array_push($param_filtres, $dernier_filtre); |
} |
|
$requete .= " WHERE ".implode(" AND ",array_intersect_key($filtres, array_flip($param_filtres))); |
} |
$requete .= ")"; |
241,9 → 243,11 |
} |
} |
|
|
return $fichier; |
} |
|
|
private function formaterColonnes($colonnes, $ref) { |
$colonnesOrdonnees = array("nn" => array("a.num_nom", "num_nom", "Numéro nomenclatural"), |
"nr" => array("a.num_nom_retenu", "num_nom_retenu", "Numéro nomenclatural du nom retenu"), |
280,6 → 284,9 |
"nomadd" => array("a.nom_addendum", "nom_addendum", "Commentaires nomenclaturaux"), |
"nsr" => array("b.nom_sci as nom_sci_retenu", "nom_sci", "Nom retenu sans auteur"), |
"hom" => array("a.homonyme", "homonyme", "Homonymie"), |
"syn" => array("CASE a.num_nom_retenu WHEN a.num_nom THEN 'retenu' |
WHEN '' THEN 'ambigu' |
ELSE 'synonyme' END AS synonymie", "num_nom_retenu", "Statut du nom" ), |
"synprop" => array("a.synonyme_proparte", "synonyme_proparte", "Synonyme proprate"), |
"syndout" => array("a.synonyme_douteux", "synonyme_douteux", "Synonyme douteux"), |
"synmapp" => array("a.synonyme_mal_applique", "synonyme_mal_applique", "Synonyme mal appliqué"), |