Ответы пользователя по тегу MySQL
  • Как JSON файл с большим количеством строк передать в MySQL?

    desnomad
    @desnomad Автор вопроса
    JS
    Спасибо тем кто пытался помочь, я написал вот такой код:
    $connect = mysql_pconnect("localhost","root","") or die ("Невозможно подключение к MySQL"); // Соединяемся с базой mysql (адрес, имя пользователя, пароль)
    	mysql_select_db("weather", $connect) or die ("Невозможно открыть таблицу с данными"); // подключаемся к базе (имя базы, $connect)
    	mysql_query("SET NAMES 'utf8'", $connect); // задаем кодировку
    	$filename = "template/city.list.json"; // местонахождения json базы
    	if ($file = fopen($filename, "r")) { // открываем json файл
    		while (!feof($file)) { // проходимся циклом пока не достигнем конца файла 
    			$line = fgets($file, 1024); // возвращаем каждую строку файла
    			$data = json_decode($line, true); // декодируем json массив в php массив
    			$result = mysql_query ("INSERT INTO weather_country (id, name, country, lon, lat) VALUES ('".$data['_id']."', '".$data['name']."', '".$data['country']."', '".$data['coord']['lon']."', '".$data['coord']['lat']."')"); // записываем полученые данные в таблицу weather_country.
    		}
    	}
    	if (isset($result)){ // выводим результат работы скрипта
      		echo "Добавлено в базу данных.";
      	} else {
      		echo "Недобавлено в базу данных.";
      	}


    Если кто то знает более изящное и правильное написание, прошу поделится!
    Ответ написан
    Комментировать