146,13 → 146,17 |
$famille = array(); |
$noms = array(); |
$introuvables = array(); |
foreach ($resultats as $nom) { |
$introuvablesSyno = array(); |
foreach ($resultats as $id => $nom) { |
$nn = $nom['num_nom']; |
$nnr = $nom['num_nom_retenu']; |
$nts = $nom['num_tax_sup']; |
$rg = $nom['rang']; |
if ($nnr != '') { |
if ($rg == '180') { |
$famille[$nn] = $nom['nom_sci']; |
} else { |
if ($nn == $nnr) {// nom retenu |
if (isset($noms[$nts])) { |
$noms[$nn] = $noms[$nts]; |
} else if (isset($famille[$nts])) { |
160,15 → 164,48 |
} else { |
$introuvables[] = $nn; |
} |
} else {// nom synonyme |
if (isset($noms[$nnr])) { |
$noms[$nn] = $noms[$nnr]; |
} else { |
$introuvablesSyno[] = $nom; |
} |
} |
} |
} |
unset($resultats[$id]); |
$this->afficherAvancement("Attribution de leur famille aux noms en cours"); |
if ($this->stopperLaBoucle($this->getParametre('t'))) break; |
} |
echo "\n"; |
if ($introuvables != 0) { |
$introuvables = implode(', ', $introuvables); |
echo "Parent introuvable pour les noms : $introuvables\n"; |
|
foreach ($introuvablesSyno as $id => $nom) { |
$nn = $nom['num_nom']; |
$nnr = $nom['num_nom_retenu']; |
if (isset($noms[$nnr])) { |
$noms[$nn] = $noms[$nnr]; |
} else { |
$introuvables[] = $nn; |
} |
unset($introuvablesSyno[$id]); |
$this->afficherAvancement("Attribution de leur famille aux synonymes en cours"); |
} |
echo "\n"; |
|
if (count($introuvables) != 0) { |
$introuvablesNbre = count($introuvables); |
echo "Famille introuvable pour $introuvablesNbre noms ! Voir le log.\n"; |
|
$logContenu = implode(", \n", $introuvables); |
$logFichier = realpath(dirname(__FILE__)).'/log/famille_introuvable.log'; |
echo $logFichier."\n"; |
file_put_contents($logFichier, $logContenu); |
} |
if (count($introuvablesSyno) != 0) { |
//$introuvablesSyno = implode(', ', $introuvablesSyno); |
$introuvablesSyno = count($introuvablesSyno); |
echo "Synonyme avec nom retenu introuvable : $introuvablesSyno\n"; |
} |
$this->lancerRequeteModificationPrChpFamille($noms); |
} |
|
184,11 → 221,11 |
} |
|
private function recupererTuplesPrChpFamille() { |
$requete = 'SELECT num_nom, num_tax_sup, rang, nom_sci '. |
$requete = 'SELECT num_nom, num_nom_retenu, num_tax_sup, rang, nom_sci '. |
"FROM {$this->table} ". |
"WHERE rang >= 180 ". |
" AND num_tax_sup != '' ". |
"ORDER BY rang ASC,num_tax_sup ASC "; |
"ORDER BY rang ASC, num_tax_sup ASC , num_nom_retenu DESC "; |
//echo $requete."\n"; |
$resultat = $this->getBdd()->recupererTous($requete); |
return $resultat; |
} |