私はネットワークに興味があるので、表示されるデータはスイッチ/ポート情報です。
問題:
SQLクエリの「ge-0/0 / x」の部分だけが必要で、「ge-0 / 0 / x」で並べ替えて、「ge-0/0」の「個別に選択」したいだけです。 / x "部分(私をフォローしている場合は、1つのポートのみ)。
いくつかの結果にいくつかの点があるので、私rtrim
はそれらを取り除くために使用できることがわかりました。結果にもダッシュ(-)が含まれているので、それらを取り除くための助けをいただければ幸いです。
PHP:
// "nodes" is the number of swithes, thus the ge-[node].
$host_name = 'switch_host_name';
$nodes = 2;
for($node=0;$node<$nodes;$node++){
$ge = '%: ge-'.$node.'%';
$portquery = mysql_query("SELECT service_description FROM service WHERE host_name='$host_name' AND service_description LIKE '$ge'") or die(mysql_error());
while($portarray = mysql_fetch_array($portquery)){
$port = substr($portarray['service_description'],8,10);
echo '<div id="'.$port.'_'.$host_name.'">'.$port.'</div>';
}
echo '<br />';
}
SQLの例:
+-------------------+----------------------------------+
| host_name | service_description |
+-------------------+----------------------------------+
| switch_host_name | IF 151: ge-0/0/28.0 - Status |
| switch_host_name | IF 153: ge-0/0/29 - Status |
| switch_host_name | IF 155: ge-0/0/3 - Description |
| switch_host_name | IF 155: ge-0/0/3 - Status |
| switch_host_name | IF 155: ge-0/0/3.0 - Traffic |
| switch_host_name | IF 195: ge-0/0/5 - Description |
| switch_host_name | IF 195: ge-0/0/5 - Status |
| switch_host_name | IF 195: ge-0/0/5.0 - Traffic |
+-------------------+----------------------------------+
あなたが私に指摘することができるどんな手がかり、リンク、ガイド、tutsも大いに感謝されます。もちろん、解決策は素晴らしいでしょう!
前もって感謝します。