Keresés

Új hozzászólás Aktív témák

  • vargalex

    félisten

    válasz inf3rno #96233 üzenetére

    Már rég nem használtam, mert ahogy írtam, Hitronra cserélték, de ez a script:

    <?php
    define("CBPASSWORD", "cbjelszo");
    define('DBHOST', 'adatbazis_host');
    define('DBUSER', 'adatbazis_user');
    define('DBPASSWORD', 'adatbazis_user_jelszo');
    define('DBDATABASE', 'adatbazis_neve');
     function getDatas($URL, $postFields, $getbody) {
      $ch = curl_init();
      curl_setopt($ch, CURLOPT_URL, $URL);
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
      curl_setopt($ch, CURLOPT_HEADER, true);
      curl_setopt($ch, CURLOPT_NOBODY, !$getbody);
      curl_setopt($ch, CURLOPT_USERAGENT, "AlexCurl");
      if ( $postFields != "" ) {
       curl_setopt($ch, CURLOPT_POST, true);
       curl_setopt($ch, CURLOPT_POSTFIELDS, $postFields);
      }
      $response = curl_exec($ch);
      $header_size = curl_getinfo($ch, CURLINFO_HEADER_SIZE);
      $headers = substr($response, 0, $header_size);
      $body = substr($response, $header_size);
      $data = [];
      $headers = explode(PHP_EOL, $headers);
      foreach ($headers as $row) {
       $parts = explode(':', $row);
       if (count($parts) === 2) {
        $data[trim($parts[0])] = trim($parts[1]);
       }
      }
      parse_str(explode(";", $data["Set-Cookie"])[0], $token);
      $ret = [];
      $ret["token"] = $token["sessionToken"];
      $ret["body"] = $body;
      curl_close($ch);
      return $ret;
     }
     $response = getDatas("http://192.168.100.1/common_page/login.html", "", false);
     $response = getDatas("http://192.168.100.1/xml/setter.xml", "token=" . $response["token"] . "&fun=15&username=&password=" . CBPASSWORD, false);
     $response = getDatas("http://192.168.100.1/xml/getter.xml", "token=" . $response["token"] . "&fun=10", true);
     $downchannels=simplexml_load_string($response["body"]);
     $response = getDatas("http://192.168.100.1/xml/getter.xml", "token=" . $response["token"] . "&fun=11", true);
            $upchannels=simplexml_load_string($response["body"]);
     $response = getDatas("http://192.168.100.1/xml/setter.xml", "token=" . $response["token"] . "&fun=16", false);
     $response = getDatas("http://192.168.100.1/common_page/login.html", "", false);
     $mysqli = new mysqli(DBHOST, DBUSER, DBPASSWORD, DBDATABASE);
     if ($mysqli->connect_error) {
      die('Connect Error (' . $mysqli->connect_errno . ') ' . $mysqli->connect_error);
     }
     $mysqli->query("insert into power_level_date(pld_date) values(now())");
     $dateID = $mysqli->insert_id;
     foreach ($downchannels->downstream as $channel) {
      $sql = "select ch_id from channels where ch_freq='" . $mysqli->real_escape_string($channel->freq) . "' and ch_type='D'";
      $result = $mysqli->query($sql) or die("Egyéb hiba");
      $row = $result->fetch_assoc();
      $channelID = $row["ch_id"];
      $row_cnt = $result->num_rows;
      $result->free();
      if ($row_cnt == 0) {
       $mysqli->query("insert into channels(ch_freq, ch_type) values('" . $channel->freq . "', 'D')");
       $channelID = $mysqli->insert_id;
      }
      $mysqli->query("insert into power_levels(pl_ch_id, pl_pld_id, pl_power) values(" . $channelID . ", " . $dateID . ", " . $channel->pow . ")"); 
     }
     foreach ($upchannels->upstream as $channel) {
      $sql = "select ch_id from channels where ch_freq='" . $mysqli->real_escape_string($channel->freq) . "' and ch_type='U'";
                    $result = $mysqli->query($sql) or die("Egyéb hiba");
                    $row = $result->fetch_assoc();
                    $channelID = $row["ch_id"];
                    $row_cnt = $result->num_rows;
                    $result->free();
                    if ($row_cnt == 0) {
                            $mysqli->query("insert into channels(ch_freq, ch_type) values('" . $channel->freq . "', 'U')");
                            $channelID = $mysqli->insert_id;
                    }
                    $mysqli->query("insert into power_levels(pl_ch_id, pl_pld_id, pl_power) values(" . $channelID . ", " . $dateID . ", " . $channel->power . ")");
     }
     $mysqli->close();
    ?>

    Ebből az adatbázis struktúrát láthatod, de átküldöm, ha kell... Illetve, amint láthatod, bridge módra készült.

    [ Szerkesztve ]

    Alex

Új hozzászólás Aktív témák