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 :: Обновление из CSV файла в базу данных MySQL

 PHP.SU

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


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

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


Новичок


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


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




Здравствуйте. Вопрос такой, таблица в базе данных обновляется все хорошо, только как сделать так, чтобы обновлялись только те строки, которые были изменены? То есть, допустим если у меня изменились строки в поле MAC, то обновить все поля в таблице базы данных, где они были изменены.
PHP:
скопировать код в буфер обмена
  1. $GLOBALS['link'] = mysqli_connect("localhost", "user", "passwd", "infoip");
  2.     $path = 'update';
  3.     $dir2 = opendir ("$path");
  4.     $i = 0;
  5.         while (false !== ($file2 =  readdir($dir2))){
  6.             if($file2 != "." && $file2 != ".."){
  7.                 if (strpos($file2, '.csv',1) ) {  
  8.                 $i++;
  9.                 }
  10.                 if ( substr($file2, 0, strpos($file2, '.csv',1) ) ) {
  11.                     $res_strup = substr($file2, 0, strpos($file2, '.csv',1) );        
  12.                    $res_str2 = str_replace( "_" , "/" ,$res_strup);
  13.                    $query2 = "SELECT net FROM `name_net`";
  14.                    $resnet2 = mysqli_query( $GLOBALS['link'], $query2 );
  15.                 if (($handle = fopen("update/".$file2, "r")) !== FALSE){
  16.                    fgetcsv($handle, 1000, ",");
  17.                         while (($data = fgetcsv($handle, 1000, ",")) !== FALSE){
  18.                         $num = count($data);  
  19.                         $row++;
  20.                     $query_up = "UPDATE `".$res_str2."` SET Ping = '$data[1]', Hostname = '$data[2]', Ports = '$data[3]', Mac = '$data[4]', date = '".date('Y-m-d H:i')."' WHERE IP = '$data[0]'";
  21.                         $resaddnet2 = mysqli_query($GLOBALS['link'], $query_up );
  22.                                 if ($resaddnet2) {
  23.                                     echo "Описание сети ".str_replace ( "_" , "/" , $res_strup )." успешно добавлено! </br>";
  24.                                 }
  25.                                 else {echo "Описание сети ".str_replace ( "_" , "/" , $res_strup )." не добавлено! </br>";}
  26.                         }
  27.                         fclose($handle);
  28.                 }
  29.                 }
  30.             }
  31.         }
 
 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