Stránka 1 z 1

SQ do SQL

Napsal: 13 Aug 2008 19:42
od hawkfree
Jak data z SQ dostat do SQL? Diky

Re: SQ do SQL

Napsal: 14 Aug 2008 21:57
od michal.siman
vycist z MT(ssh, telnet), parsovat (PHP?), zapsat do SQL

Re: SQ do SQL

Napsal: 15 Aug 2008 15:51
od hawkfree
Problem je jak vyčíst. Je potřeba automaticky treba kazdou hodinu.

Re: SQ do SQL

Napsal: 15 Aug 2008 16:18
od michal.siman
hawkfree píše:Problem je jak vyčíst. Je potřeba automaticky treba kazdou hodinu.


no predpokladam ze mas nejaky server na kterym ti bezi to SQL, takze si tam vytvoris script v php, hodis ho do cronu (trebas kazdou hodinu, nebo 15 minut nebo tydne) a ten script to bude zpracovavat.

priklad "vytazeni" dat z MT (address list):

Kód: Vybrat vše

// data z mikrotiku
function get_data_from_mikrotik($mikrotik_server, $mikrotik_username, $mikrotik_key) {
    $mikrotik_connection = "ssh ".$mikrotik_server." -l ".$mikrotik_username." -i ".$mikrotik_key." ";

    // vykonana prikaz a ulozi vystup do pole
    $command = $mikrotik_connection."\"/ip firewall address-list print terse\"";
    exec($command, $list);// vypis z mikrotiku

    $list_mikrotik = array();
    for ($i=0; $i<count($list); $i++) {
        $regex = "/([0-9]+)\s*comment=([0-9a-zA-Z_ -.,+]*)list=(zakaznici)\s*address=(\b(?:[0-9]{1,3}\.){3}[0-9]{1,3}\b)/";

        $ok = preg_match_all($regex, $list[$i], $fields);

        if ($ok) {
            $list_mikrotik[] = array("id" => $fields[1][0], "comment" => $fields[2][0], "list" => $fields[3][0], "address" => $fields[4][0]);
        }
    }

    return $list_mikrotik;
}