Ejemplo n.º 1
0
function get_paths($names)
{
    global $db;
    global $config;
    $paths = array();
    $names = array_unique($names);
    foreach ($names as $name) {
        if ($config['use_gbif']) {
            $sql = 'SELECT * FROM nub_2011_10_31 WHERE (name = ' . $db->qstr($name) . ') LIMIT 1';
            //echo $sql;
            $result = $db->Execute($sql);
            if ($result == false) {
                die("failed [" . __LINE__ . "]: " . $sql);
            }
            if ($result->NumRows() != 0) {
                $path = '';
                $keys = array('k', 'p', 'c', 'o', 'f', 'g', 's');
                foreach ($keys as $k) {
                    if ($result->fields[$k] != '') {
                        $path .= '/' . $result->fields[$k];
                    }
                }
                //echo $path . '<br/>';
                store_path($result->fields['concept_id'], $path);
                $paths[$name] = $path;
            }
        } else {
            $sql = 'SELECT name, path FROM col_tree
	INNER JOIN taxa USING(record_id)
	WHERE (name =  ' . $db->qstr($name) . ') LIMIT 1';
            $result = $db->Execute($sql);
            if ($result == false) {
                die("failed [" . __LINE__ . "]: " . $sql);
            }
            if ($result->NumRows() != 0) {
                $paths[$name] = $result->fields['path'];
            }
        }
    }
    return $paths;
}
Ejemplo n.º 2
0
<?php

// create GBIF paths
require_once 'paths.php';
for ($i = 0; $i <= 5937422; $i++) {
    //echo $i . "\n";
    echo '.';
    $sql = 'SELECT * FROM nub_2011_10_31 WHERE concept_id = ' . $i . ' AND path IS NULL LIMIT 1';
    $result = $db->Execute($sql);
    if ($result == false) {
        die("failed [" . __LINE__ . "]: " . $sql);
    }
    if ($result->NumRows() == 1) {
        $path = '';
        $keys = array('k', 'p', 'c', 'o', 'f', 'g', 's');
        foreach ($keys as $k) {
            if ($result->fields[$k] != '') {
                $path .= '/' . $result->fields[$k];
            }
        }
        //echo $path . "\n";
        store_path($result->fields['concept_id'], $path);
    }
}