Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Реализация запросов через циклы

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (1): [1]   

> Без описания
shonny
Отправлено: 15 Ноября, 2016 - 20:25:12
Post Id


Новичок


Покинул форум
Сообщений всего: 9
Дата рег-ции: Нояб. 2016  


Помог: 0 раз(а)




Здравствуйте, проблема вот в чем. Сделал запросы для нескольких таблиц, в данном случае реализованы функции обновления для 3 таблиц 10.20.138.0/23, 10.20.139.0/24, 10.20.140.0/25, обновление происходит из файлов. Знаю, что так писать не нужно, поэтому хочу реализовать через циклы, только не знаю как.
PHP:
скопировать код в буфер обмена
  1.         $GLOBALS['link'] = mysqli_connect("localhost", "user", "pass", "infoip");
  2.             $filename = '10.20.139.0,24.csv';
  3. if (file_exists($filename)) {
  4.     echo "В последний раз файл $filename был изменен: " . date ("F d Y H:i:s.", filemtime($filename));
  5. }
  6.             $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 ");
  7.                         $fd = fopen('10.20.139.0,24.csv', 'r+'); // чтение и запись
  8.                             while(!feof($fd)) {
  9.                                 $buffer = fgets($fd, 4096);
  10.                                 list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer);
  11.                                  $sql_up = "UPDATE `10.20.139.0/24` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
  12.                                  mysqli_query($GLOBALS['link'],$sql_up) or die(mysqli_error());
  13.  
  14.                                 }
  15.          
  16.                          fclose($fd);
  17.                          
  18.                                      $filename2 = '10.20.138.0,23.csv';
  19. if (file_exists($filename2)) {
  20.     echo "В последний раз файл $filename2 был изменен: " . date ("F d Y H:i:s.", filemtime($filename2));
  21. }
  22.             $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 ");
  23.                         $fd2 = fopen('10.20.138.0,23.csv', 'r+'); // чтение и запись
  24.                             while(!feof($fd2)) {
  25.                                 $buffer2 = fgets($fd2, 4096);
  26.                                 list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer2);
  27.                                  $sql_up2 = "UPDATE `10.20.138.0/23` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
  28.                                  mysqli_query($GLOBALS['link'],$sql_up2) or die(mysqli_error());
  29.                                  
  30.                                 }
  31.                          fclose($fd2);
  32.                          
  33.                                     $filename3 = '10.20.140.0,25.csv';
  34. if (file_exists($filename)) {
  35.     echo "В последний раз файл $filename был изменен: " . date ("F d Y H:i:s.", filemtime($filename));
  36. }
  37.             $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 ");
  38.                         $fd3 = fopen('10.20.138.0,23.csv', 'r+'); // чтение и запись
  39.                             while(!feof($fd3)) {
  40.                                 $buffer3 = fgets($fd3, 4096);
  41.                                 list($IP,$Ping,$Hostname,$Ports,$Mac)=explode(",",$buffer3);
  42.                                  $sql_up3 = "UPDATE `10.20.138.0/23` SET Ping = '$Ping', Hostname = '$Hostname', Ports = '$Ports', Mac = '$Mac' WHERE IP = '$IP'";
  43.                                  mysqli_query($GLOBALS['link'],$sql_up3) or die(mysqli_error());
  44.                                  
  45.                                 }
  46.                          fclose($fd3);

Читал про такую команду scandir, может через нее можно получить список файлов и реализовать через циклы?
PHP:
скопировать код в буфер обмена
  1. $dir = 'Z:\xampp\htdocs\PhpProject\update';
  2.             $files = array_diff( scandir( $dir), array('..', '.'));  
  3.                 for ($i = 0; $i < count($files); $i++){
 
 Top
Страниц (1): [1]
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Работа с СУБД »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB