Перенос IP-учета в таблицу с одной строкой

Что касается моего другого вопроса: IP Accounting для SQL Database

Мне нужна помощь с другим скриптом, который я пишу. Я хотел бы иметь еще один скрипт, который будет извлекать всю информацию, за исключением пакетов в таблице, а затем я хотел бы поместить ее в другую таблицу, но только отдельные строки информации, сценарий должен проверять каждый источник, пункт назначения и байты из таблицу (я не беспокоюсь о пакетах) и сохраняю ее в другой таблице, чтобы она суммировала общую пропускную способность для загрузки и загрузки по IP-адресу.

Поэтому он должен хранить его в таблице с одним столбцом с именем ipaddress, другой называется downloadtransfer, другой называется uploadtransfer, другой называется totaltransfer (который добавляет как загрузку, так и загрузку и последнюю метку времени.

Как я могу это сделать? Я попытался получить информацию из двух таблиц, но не совсем уверен в том, как это сделать, и проверять их, а также выбирать каждый столбец и добавлять их в новую таблицу.

<?php include 'config.php'; $conn = mysqli_connect($SQLserver, $SQLusername, $SQLpassword, $SQLdatabase); $query = "SELECT * FROM users" and "SELECT * from datapackages"; $result = mysqli_query($conn,$query); echo "<table>"; echo "<tr><th>username</th><th>datapackageid</th><th>datapackagename</th> <th>datalimit</th></tr>"; while($row = mysqli_fetch_array($result)) { $username = $row['username']; $datapackageid = $row['datapackage']; $datapackagename = $row['datapackagename']; $datalimit = $row['datalimit']; echo "<tr><td>".$username."</td><td>".$datapackageid."</td> <td>".$datapackagename."</td><td>".$datalimit."</td></tr>"; } echo "</table>"; ?> 

Код с комментария:

 <?php include ("config.php"); $conn = mysqli_connect($SQLserver, $SQLusername, $SQLpassword, $SQLdatabase); $query = "SELECT src_address, SUM(bytes) FROM ipaccounting GROUP BY src_address"; $result = mysqli_query($conn,$query); echo "<table>"; echo "<tr><th>src_address</th><th>Bytes</th></tr>"; while($row = mysqli_fetch_array($result)) { $src_address = $row['src_address']; $bytes = $row['bytes']; echo "<tr><td>".$src_address."</td><td>".$bytes."</td></tr>"; } echo "</table>"; mysqli_close($conn); ?> 

Я бы рекомендовал использовать данные, которые вы сохранили в своей таблице, из других вопросов, которые вы связали, а затем просто выберите данные оттуда. Если это ваш запрос вставки для хранения данных из другого вопроса:

 $sql = "INSERT INTO accounting (src_address, dst_address, bytes, packets) VALUES ('$src', '$dst', '$bytes', '$packets')"; 

Если вы хотите получить общее количество байтов, переданных для определенного IP-адреса источника:

 $sql = "SELECT src_address, SUM(bytes) AS total_bytes FROM accounting GROUP BY src_address"; 

Или вы можете сделать это по адресу назначения, изменив src_address на dst_address.

Это хорошо сделать так, потому что вы уже храните данные. Нет причин дублировать данные в другом формате, когда он уже существует.