本文整理汇总了PHP中IPAddress::getFromDB方法的典型用法代码示例。如果您正苦于以下问题:PHP IPAddress::getFromDB方法的具体用法?PHP IPAddress::getFromDB怎么用?PHP IPAddress::getFromDB使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IPAddress
的用法示例。
在下文中一共展示了IPAddress::getFromDB方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: showForItem
/**
* Display form to unlock fields and links
*
* @param CommonDBTM $item the source item
**/
static function showForItem(CommonDBTM $item)
{
global $DB;
$ID = $item->getID();
$itemtype = $item->getType();
$header = false;
//If user doesn't have write right on the item, lock form must not be displayed
if (!$item->canCreate()) {
return false;
}
echo "<div width='50%'>";
echo "<form method='post' id='lock_form'\n name='lock_form' action='" . Toolbox::getItemTypeFormURL(__CLASS__) . "'>";
echo "<input type='hidden' name='id' value='{$ID}'>\n";
echo "<input type='hidden' name='itemtype' value='{$itemtype}'>\n";
echo "<table class='tab_cadre_fixe'>";
echo "<tr><th colspan='2''>" . __('Locked items') . "</th></tr>";
//Use a hook to allow external inventory tools to manage per field lock
$results = Plugin::doHookFunction('display_locked_fields', array('item' => $item, 'header' => $header));
$header |= $results['header'];
//Special locks for computers only
if ($itemtype == 'Computer') {
//Locks for items recorded in glpi_computers_items table
$types = array('Monitor', 'Peripheral', 'Printer');
foreach ($types as $type) {
$params = array('is_dynamic' => 1, 'is_deleted' => 1, 'computers_id' => $ID, 'itemtype' => $type);
$params['FIELDS'] = array('id', 'items_id');
$first = true;
foreach ($DB->request('glpi_computers_items', $params) as $line) {
$tmp = new $type();
$tmp->getFromDB($line['items_id']);
$header = true;
if ($first) {
echo "<tr><th colspan='2'>" . $type::getTypeName(2) . "</th></tr>\n";
$first = false;
}
echo "<tr class='tab_bg_1'><td class='center' width='10'>";
echo "<input type='checkbox' name='Computer_Item[" . $line['id'] . "]'></td>";
echo "<td class='left' width='95%'>" . $tmp->getName() . "</td>";
echo "</tr>\n";
}
}
$types = array('ComputerDisk', 'ComputerVirtualMachine');
foreach ($types as $type) {
$params = array('is_dynamic' => 1, 'is_deleted' => 1, 'computers_id' => $ID);
$params['FIELDS'] = array('id', 'name');
$first = true;
foreach ($DB->request(getTableForItemType($type), $params) as $line) {
$header = true;
if ($first) {
echo "<tr><th colspan='2'>" . $type::getTypeName(2) . "</th></tr>\n";
$first = false;
}
echo "<tr class='tab_bg_1'><td class='center' width='10'>";
echo "<input type='checkbox' name='" . $type . "[" . $line['id'] . "]'></td>";
echo "<td class='left' width='95%'>" . $line['name'] . "</td>";
echo "</tr>\n";
}
}
//Software versions
$params = array('is_dynamic' => 1, 'is_deleted' => 1, 'computers_id' => $ID);
$first = true;
$query = "SELECT `csv`.`id` AS `id`,\n `sv`.`name` AS `version`,\n `s`.`name` AS `software`\n FROM `glpi_computers_softwareversions` AS csv\n LEFT JOIN `glpi_softwareversions` AS sv\n ON (`csv`.`softwareversions_id` = `sv`.`id`)\n LEFT JOIN `glpi_softwares` AS s\n ON (`sv`.`softwares_id` = `s`.`id`)\n WHERE `csv`.`is_deleted` = '1'\n AND `csv`.`is_dynamic` = '1'\n AND `csv`.`computers_id` = '{$ID}'";
foreach ($DB->request($query) as $line) {
$header = true;
if ($first) {
echo "<tr><th colspan='2'>" . Software::getTypeName(2) . "</th></tr>\n";
$first = false;
}
echo "<tr class='tab_bg_1'><td class='center' width='10'>";
echo "<input type='checkbox' name='Computer_SoftwareVersion[" . $line['id'] . "]'></td>";
echo "<td class='left' width='95%'>" . $line['software'] . " " . $line['version'] . "</td>";
echo "</tr>\n";
}
//Software licenses
$params = array('is_dynamic' => 1, 'is_deleted' => 1, 'computers_id' => $ID);
$first = true;
$query = "SELECT `csv`.`id` AS `id`,\n `sv`.`name` AS `version`,\n `s`.`name` AS `software`\n FROM `glpi_computers_softwarelicenses` AS csv\n LEFT JOIN `glpi_softwarelicenses` AS sv\n ON (`csv`.`softwarelicenses_id` = `sv`.`id`)\n LEFT JOIN `glpi_softwares` AS s\n ON (`sv`.`softwares_id` = `s`.`id`)\n WHERE `csv`.`is_deleted` = '1'\n AND `csv`.`is_dynamic` = '1'\n AND `csv`.`computers_id` = '{$ID}'";
foreach ($DB->request($query) as $line) {
$header = true;
if ($first) {
echo "<tr><th colspan='2'>" . SoftwareLicense::getTypeName(2) . "</th>" . "</tr>\n";
$first = false;
}
echo "<tr class='tab_bg_1'><td class='center' width='10'>";
echo "<input type='checkbox' name='Computer_SoftwareLicense[" . $line['id'] . "]'></td>";
echo "<td class='left' width='95%'>" . $line['software'] . " " . $line['version'] . "</td>";
echo "</tr>\n";
}
}
$first = true;
$item = new NetworkPort();
$params = array('is_dynamic' => 1, 'is_deleted' => 1, 'items_id' => $ID, 'itemtype' => $itemtype);
$params['FIELDS'] = array('id');
foreach ($DB->request('glpi_networkports', $params) as $line) {
$item->getFromDB($line['id']);
//.........这里部分代码省略.........
示例2: ImportNetworkEquipment
/**
* @test
*/
public function ImportNetworkEquipment()
{
global $DB;
self::restore_database();
// Load session rights
$_SESSION['glpidefault_entity'] = 0;
Session::initEntityProfiles(2);
Session::changeProfile(4);
$pfUnmanaged = new PluginFusioninventoryUnmanaged();
$networkEquipment = new NetworkEquipment();
$networkPort = new NetworkPort();
$networkName = new NetworkName();
$iPAddress = new IPAddress();
$input = array('name' => 'switch', 'entities_id' => 0, 'item_type' => 'NetworkEquipment', 'sysdescr' => 'Cisco machin chose', 'locations_id' => 1, 'is_dynamic' => 1, 'serial' => 'XXS6BEF3', 'comment' => 'this is a comment', 'plugin_fusioninventory_configsecurities_id' => 1);
$unmanageds_id = $pfUnmanaged->add($input);
// * Add networkport
$input = array();
$input['itemtype'] = 'PluginFusioninventoryUnmanaged';
$input['items_id'] = $unmanageds_id;
$input['instantiation_type'] = 'NetworkPortEthernet';
$input['name'] = 'general';
$input['mac'] = '00:00:00:43:ae:0f';
$input['is_dynamic'] = 1;
$networkports_id = $networkPort->add($input);
$input = array();
$input['items_id'] = $networkports_id;
$input['itemtype'] = 'NetworkPort';
$input['name'] = '';
$input['is_dynamic'] = 1;
$networknames_id = $networkName->add($input);
$input = array();
$input['entities_id'] = 0;
$input['itemtype'] = 'NetworkName';
$input['items_id'] = $networknames_id;
$input['name'] = '192.168.20.1';
$input['is_dynamic'] = 1;
$iPAddress->add($input);
$pfUnmanaged->import($unmanageds_id);
$cnt = countElementsInTable("glpi_networkequipments");
$this->assertEquals(1, $cnt, "May have network equipment added");
$cnt = countElementsInTable("glpi_plugin_fusioninventory_unmanageds");
$this->assertEquals(0, $cnt, "Unknown device may be deleted");
$networkEquipment->getFromDB(1);
$this->assertEquals('XXS6BEF3', $networkEquipment->fields['serial'], "Serial");
$this->assertEquals('switch', $networkEquipment->fields['name'], "Name");
$this->assertEquals(1, $networkEquipment->fields['is_dynamic'], "is_dynamic");
$this->assertEquals(1, $networkEquipment->fields['locations_id'], "locations_id");
$this->assertEquals('this is a comment', $networkEquipment->fields['comment'], "comment");
$networkPort->getFromDB(1);
$a_reference = array('name' => 'general', 'id' => '1', 'items_id' => '1', 'itemtype' => 'NetworkEquipment', 'entities_id' => '0', 'is_recursive' => '0', 'logical_number' => '0', 'instantiation_type' => 'NetworkPortEthernet', 'mac' => '00:00:00:43:ae:0f', 'comment' => '', 'is_deleted' => '0', 'is_dynamic' => '1');
$this->assertEquals($a_reference, $networkPort->fields, "Networkport");
$networkName->getFromDB(1);
$a_reference = array('id' => '1', 'entities_id' => '0', 'items_id' => '1', 'itemtype' => 'NetworkPort', 'comment' => NULL, 'fqdns_id' => '0', 'is_deleted' => '0', 'is_dynamic' => '1', 'name' => '');
$this->assertEquals($a_reference, $networkName->fields, "Networkname");
$iPAddress->getFromDB(1);
$a_reference = array('name' => '192.168.20.1', 'id' => '1', 'entities_id' => '0', 'items_id' => '1', 'itemtype' => 'NetworkName', 'version' => '4', 'binary_0' => '0', 'binary_1' => '0', 'binary_2' => '65535', 'binary_3' => '3232240641', 'is_deleted' => '0', 'is_dynamic' => '1', 'mainitems_id' => '1', 'mainitemtype' => 'NetworkEquipment');
$this->assertEquals($a_reference, $iPAddress->fields, "IPAddress");
}
示例3: getIp
static function getIp($items_id, $itemtype, $hostname)
{
global $DB;
$networkPort = new NetworkPort();
$networkName = new NetworkName();
$iPAddress = new IPAddress();
$pmHostaddress = new PluginMonitoringHostaddress();
$ip = '';
$networkports_id = 0;
$query = "SELECT * FROM `" . $pmHostaddress->getTable() . "`\n WHERE `items_id`='" . $items_id . "'\n AND `itemtype`='" . $itemtype . "'\n LIMIT 1";
$result = $DB->query($query);
if ($DB->numrows($result) == '1') {
$data = $DB->fetch_assoc($result);
if ($data['ipaddresses_id'] > 0) {
$iPAddress->getFromDB($data['ipaddresses_id']);
return $iPAddress->fields['name'];
} else {
$networkports_id = $data['networkports_id'];
}
}
if ($ip == '') {
if ($networkports_id > 0) {
$a_listnetwork = $networkPort->find("`id`='" . $networkports_id . "'");
} else {
$a_listnetwork = $networkPort->find("`itemtype`='" . $itemtype . "'\n AND `items_id`='" . $items_id . "'", "`id`");
}
foreach ($a_listnetwork as $networkports_id => $datanetwork) {
$a_networknames_find = current($networkName->find("`items_id`='" . $networkports_id . "'\n AND `itemtype`='NetworkPort'", "", 1));
if (isset($a_networknames_find['id'])) {
$networknames_id = $a_networknames_find['id'];
$a_ips_fromDB = $iPAddress->find("`itemtype`='NetworkName'\n AND `items_id`='" . $networknames_id . "'");
foreach ($a_ips_fromDB as $data) {
if ($data['name'] != '' && $data['name'] != '127.0.0.1' && $data['name'] != '::1') {
return $data['name'];
}
}
}
}
}
return $hostname;
}
示例4: showHardware
/**
* show hardware to be identified, or identified and imported, or just the hardware with agents installed on them
* @param type $hardware array
* @param type $lim integer
* @param int|type $start integer
* @param type $ipAdress string
* @param type $status string
* @param $subnet
* @param $action
* @global type $CFG_GLPI
*/
static function showHardware($hardware, $lim, $start = 0, $ipAdress, $status, $subnet, $action)
{
global $CFG_GLPI, $DB;
$output_type = Search::HTML_OUTPUT;
//0
$link = $CFG_GLPI['root_doc'] . "/plugins/ocsinventoryng/front/ipdiscover.import.php";
$return = $CFG_GLPI['root_doc'] . "/plugins/ocsinventoryng/front/ipdiscover.php";
$returnargs = "subnetsChoice={$subnet}&action={$action}";
$reload = "ip={$ipAdress}&status={$status}&action={$action}";
$backValues = "?b[]={$ipAdress}&b[]={$status}";
if ($status == "inventoried") {
$status_name = __('Inventoried', 'ocsinventoryng');
} elseif ($status == "imported") {
$status_name = __('Imported / Linked', 'ocsinventoryng');
} elseif ($status == "noninventoried") {
$status_name = __('Non Inventoried', 'ocsinventoryng');
} else {
$status_name = __('Identified', 'ocsinventoryng');
}
$subnet_name = self::getSubnetNamebyIP($ipAdress);
echo "<div class='center'>";
echo "<h2>" . __('Subnet', 'ocsinventoryng') . " " . $subnet_name . " (" . $ipAdress . ") - " . $status_name;
echo " ";
$refresh = $CFG_GLPI['root_doc'] . "/plugins/ocsinventoryng/front/ipdiscover.import.php?" . $reload;
Html::showSimpleForm($refresh, 'refresh', _sx('button', 'Refresh'), array(), $CFG_GLPI["root_doc"] . "/plugins/ocsinventoryng/pics/synchro.png");
echo "</h2>";
echo "</div>";
if ($subnet >= 0) {
$back = __('Back');
echo "<div class='center'><a href='{$return}?{$returnargs}'>{$back}</div>";
}
echo Html::printPager($start, count($hardware), $link, $reload);
echo Search::showNewLine($output_type, true);
if (empty($hardware)) {
echo "<div class='center b'><br>" . __('No new IPDiscover device to import', 'ocsinventoryng') . "</div>";
Html::displayBackLink();
} else {
$header_num = 1;
switch ($status) {
case "inventoried":
echo "<table width='100%'class='tab_cadrehov'>\n";
echo Search::showHeaderItem($output_type, __('User'), $header_num);
echo Search::showHeaderItem($output_type, __('Name'), $header_num);
echo Search::showHeaderItem($output_type, __('System'), $header_num);
echo Search::showHeaderItem($output_type, __('Version of the operating system'), $header_num);
echo Search::showHeaderItem($output_type, __('IP address'), $header_num);
echo Search::showHeaderItem($output_type, __('Last OCSNG inventory date', 'ocsinventoryng'), $header_num);
echo Search::showEndLine($output_type);
$row_num = 1;
for ($i = $start; $i < $lim + $start; $i++) {
if (isset($hardware[$i])) {
$row_num++;
$item_num = 1;
echo Search::showNewLine($output_type, $row_num % 2);
echo Search::showItem($output_type, $hardware[$i]["userid"], $item_num, $row_num);
echo Search::showItem($output_type, $hardware[$i]["name"], $item_num, $row_num);
echo Search::showItem($output_type, $hardware[$i]["osname"], $item_num, $row_num);
echo Search::showItem($output_type, $hardware[$i]["osversion"], $item_num, $row_num);
echo Search::showItem($output_type, $hardware[$i]["ipaddr"], $item_num, $row_num);
echo Search::showItem($output_type, Html::convDateTime($hardware[$i]["lastdate"]), $item_num, $row_num);
echo Search::showEndLine($output_type);
}
}
echo "</table>\n";
break;
case "imported":
$target = $CFG_GLPI['root_doc'] . "/plugins/ocsinventoryng/front/ipdiscover.import.php" . $backValues;
self::checkBox($target);
echo "<form method='post' id='ipdiscover_form' name='ipdiscover_form' action='{$target}'>";
echo "<div class='center' style=\"width=100%\">";
echo "<input type='submit' class='submit' name='deletelink' value=\"" . _sx('button', 'Delete link', 'ocsinventoryng') . "\"></div>";
echo "<table width='100%'class='tab_cadrehov'>\n";
echo Search::showHeaderItem($output_type, __('Item'), $header_num);
echo Search::showHeaderItem($output_type, __('Item type'), $header_num);
echo Search::showHeaderItem($output_type, __('MAC address'), $header_num);
echo Search::showHeaderItem($output_type, __('IP address'), $header_num);
echo Search::showHeaderItem($output_type, __('Location'), $header_num);
echo Search::showHeaderItem($output_type, __('Import date in GLPI', 'ocsinventoryng'), $header_num);
echo Search::showHeaderItem($output_type, __('Subnet'), $header_num);
echo Search::showHeaderItem($output_type, __(' '), $header_num);
echo Search::showEndLine($output_type);
$row_num = 1;
for ($i = $start; $i < $lim + $start; $i++) {
if (isset($hardware[$i])) {
$row_num++;
$item_num = 1;
echo Search::showNewLine($output_type, $row_num % 2);
$class = getItemForItemtype($hardware[$i]["itemtype"]);
$class->getFromDB($hardware[$i]["items_id"]);
//.........这里部分代码省略.........