[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Реализация запросов через циклы
shonny
Здравствуйте, проблема вот в чем. Сделал запросы для нескольких таблиц, в данном случае реализованы функции обновления для 3 таблиц 10.20.138.0/23, 10.20.139.0/24, 10.20.140.0/25, обновление происходит из файлов. Знаю, что так писать не нужно, поэтому хочу реализовать через циклы, только не знаю как.
        $GLOBALS['link'] = mysqli_connect("localhost", "user", "pass", "infoip");
$filename = '10.20.139.0,24.csv';
if (file_exists($filename)) {
echo "В последний раз файл $filename был изменен: " . date ("F d Y H:i:s.", filemtime($filename));
}
$g= mysqli_query ($GLOBALS['link'],"SELECT * FROM `10.20.138.0/23`,`10.20.139.0/24`,`10.20.140.0/25` WHERE `10.20.138.0/23`.id = `10.20.139.0/24`.id = `10.20.140.0/25`.id ");
$fd = fopen('10.20.139.0,24.csv', 'r+'); // чтение и запись
while(!feof($fd)) {
$buffer = fgets($fd, 4096);
list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer);
$sql_up = "UPDATE `10.20.139.0/24` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
mysqli_query($GLOBALS['link'],$sql_up) or die(mysqli_error());

}

fclose($fd);

$filename2 = '10.20.138.0,23.csv';
if (file_exists($filename2)) {
echo "В последний раз файл $filename2 был изменен: " . date ("F d Y H:i:s.", filemtime($filename2));
}
$g2= mysqli_query ($GLOBALS['link'],"SELECT * FROM `10.20.138.0/23`,`10.20.139.0/24`,`10.20.140.0/25` WHERE `10.20.138.0/23`.id = `10.20.139.0/24`.id = `10.20.140.0/25`.id ");
$fd2 = fopen('10.20.138.0,23.csv', 'r+'); // чтение и запись
while(!feof($fd2)) {
$buffer2 = fgets($fd2, 4096);
list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer2);
$sql_up2 = "UPDATE `10.20.138.0/23` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
mysqli_query($GLOBALS['link'],$sql_up2) or die(mysqli_error());

}
fclose($fd2);

$filename3 = '10.20.140.0,25.csv';
if (file_exists($filename)) {
echo "В последний раз файл $filename был изменен: " . date ("F d Y H:i:s.", filemtime($filename));
}
$g3= mysqli_query ($GLOBALS['link'],"SELECT * FROM `10.20.138.0/23`,`10.20.139.0/24`,`10.20.140.0/25` WHERE `10.20.138.0/23`.id = `10.20.139.0/24`.id = `10.20.140.0/25`.id ");
$fd3 = fopen('10.20.138.0,23.csv', 'r+'); // чтение и запись
while(!feof($fd3)) {
$buffer3 = fgets($fd3, 4096);
list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer3);
$sql_up3 = "UPDATE `10.20.138.0/23` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
mysqli_query($GLOBALS['link'],$sql_up3) or die(mysqli_error());

}
fclose($fd3);

Читал про такую команду scandir, может через нее можно получить список файлов и реализовать через циклы?
$dir = 'Z:\xampp\htdocs\PhpProject\update';
$files = array_diff( scandir( $dir), array('..', '.'));
for ($i = 0; $i < count($files); $i++){
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2025 Invision Power Services, Inc.