<?php /***************************************************************************** IP Reg, a PHP/MySQL IPAM tool Copyright (C) 2007-2009 Wietse Warendorff (up to v0.5) Copyright (C) 2011-2023 Thomas Hooge SPDX-License-Identifier: GPL-3.0-or-later *****************************************************************************/ include("includes.php"); include("header.php"); // filter preparation $p = array(); $w = array(); if(isset($_GET['subnet_id'])) { $subnet_id = sanitize($_GET['subnet_id']); $w[] = "n.subnet_id=?"; $p[] = $subnet_id; $smarty->assign("subnet_id", $subnet_id); // get subnet details for title $sql = "SELECT CONCAT_WS('/',subnet_address,subnet_mask) AS subnet FROM subnet WHERE subnet_id=?"; $sth = $dbh->prepare($sql); $sth->execute([$subnet_id]); $smarty->assign("subnet", $sth->fetchColumn()); } else { $smarty->assign("subnet_id", ''); } // create sql with optional filter $where = join(' AND ', $w); $sql = "SELECT a.asset_id, a.asset_info, REPLACE(a.asset_name, ' ', ' ') AS asset_name, n.node_id, n.node_ip FROM node AS n LEFT JOIN asset AS a USING (asset_id)"; if ($where) { $sql .= ' WHERE ' . $where; } $sql .= "GROUP BY n.node_id ORDER BY INET_ATON(n.node_ip)"; $sth = $dbh->prepare($sql); $sth->execute($p); $smarty->assign("nodes", $sth->fetchAll()); $smarty->display("node.tpl"); include("footer.php"); ?>