Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Dane z json do bazy danych
brzanek
post
Post #1





Grupa: Zarejestrowani
Postów: 429
Pomógł: 0
Dołączył: 8.11.2012

Ostrzeżenie: (0%)
-----


Witam chciał bym zapisać dane z pliku json do mojej bazy danych. Problem jest w tym, że dane pod jednym id ok 270 wierszy. Wiem że mogę zrobić to na zasadzie
  1. $add = mysql_query("INSERT INTO nazwa_tabeli
  2. (
  3. miasto, data, tempobecna, text, ikona, code, wiatr, kierunek, cisnienie, opady, zachmurzenie,
  4. dzien, dzientempmax, dzientempmin, dzienodczuwalna, dzienmaxwind, dzienopady, dzienpogoda, dzienikona, dziencode, dzienwschod, dzienzachod,
  5. dzien1, dzien1tempmax, dzien1tempmin, dzien1odczuwalna, dzien1maxwind, dzien1opady, dzien1pogoda, dzien1ikona, dzien1wschod, dzien1zachod
  6. )
  7. VALUES(
  8. '$miasto', '$data', '$tempobecna', '$text', '$ikona', '$code', '$wiatr', '$kierunek', '$cisnienie', '$opady', '$zachmurzenie',
  9. '$dzien', '$dzientempmax', '$dzientempmin', '$dzienodczuwalna', '$dzienmaxwind', '$dzienopady', '$dzienpogoda', '$dzienikona', '$dziencode', '$dzienwschod', '$dzienzachod',
  10. '$dzien1', '$dzien1tempmax', '$dzien1tempmin', '$dzien1odczuwalna', '$dzien1maxwind', '$dzien1opady', '$dzien1pogoda', '$dzien1ikona', '$dzien1wschod', '$dzien1zachod'
  11. )");

Ale boję się, że serwer może nie wytrzymać.
Mam już zrobioną bazę danych i chcę zabrać się za kod który doda mi te dane.
Czy macie jakieś inne wyjście jak to w prosty sposób zapisać.
Tak wygląda plik json.
http://brzanek.webd.pl/prognoza/new/choszcznonew.json
Dane zmieniają się co 30 minut a więc wywołanie pliku który będzie zapisywał te dane do bazy danych MySQL będę chciał wykorzystać CRONA na serwerze.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Tomplus
post
Post #2





Grupa: Zarejestrowani
Postów: 1 885
Pomógł: 231
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


Wystarczy jedna funkcja gdzie parametrem jest miasto


  1. function updateDailyWeather($idCity = 1) { //idCity = 1 for 'Choszczno'
  2. $json = json_decode($file, true);
  3.  
  4. foreach($json['daily']['data'] as $day => $row) {
  5. $updateSet = '';
  6. foreach($row[$day] as $name => $value) {
  7. $updateSet .= "`{$name}` = '{$value}', "
  8. }
  9. // UPDATE `weather_daily` SET $updateSet `icon` = '{$json['daily']['icon']}', `summary` = '{$json['daily']['summary']}' WHERE `Id_city` = $IdCity AND `day` = $day;
  10. }
  11. }
  12.  
  13. //[SELECT FROM city]
  14. foreach/while { //co tam używasz
  15. updateDailyWeather($miasta['id']);
  16. } // Aktualizacja wszystkich miast które wywołaliśmy w zapytaniu. Jeżeli chcemy tylko jedno miasto, to pętla jest zbyteczna.


To tylko przykład. Nie możemy zrobić wszystkiego za Ciebie. Postaraj się pomyśleć sam.
Jak coś weź ołówek/długopis i narysuj sobie program, potem sprawdź co wywodzi się z czego. Nie musisz od razu robić UPDATE/INSERT.
Możesz drukować takie zapytania na ekranie przeglądarki. Będziesz widział wtedy jakie zapytania trafiają do bazy i czy są błędne.

Ten post edytował Tomplus 23.10.2016, 13:31:16
Go to the top of the page
+Quote Post

Posty w temacie
- brzanek   [MySQL][PHP]Dane z json do bazy danych   17.10.2016, 19:38:06
- - Tomplus   używając MySQLi możesz wykonać jednym zapytaniem d...   17.10.2016, 19:45:55
- - brzanek   Nie wiem czy mnie zrozumiałeś. Jedno id to wszystk...   19.10.2016, 10:46:19
- - b4rt3kk   Masz fatalnie zaprojektowaną bazę danych, jeśli fa...   19.10.2016, 13:59:43
- - brzanek   Z pewnością masz rację ale nie wiem jak to zapisać...   19.10.2016, 14:05:08
|- - b4rt3kk   Cytat(brzanek @ 19.10.2016, 15:05:08 ...   19.10.2016, 14:19:13
|- - brzanek   Cytat(b4rt3kk @ 19.10.2016, 15:19:13 ...   19.10.2016, 16:36:28
- - Tomplus   stwórz sobie pętle która będzie dodawać elementy d...   19.10.2016, 14:19:21
- - Tomplus   <pre> służy tylko do interpretacji danych w ...   19.10.2016, 20:29:07
- - brzanek   Zacząłem coś pisać ale zatrzymałem się na pobieran...   20.10.2016, 09:32:16
- - Tomplus   Powiedz mi proszę po co robisz kolumny o nazwie: ...   20.10.2016, 10:28:44
- - brzanek   Wszystko ładnie i pięknie ale będę zbierał dane dl...   20.10.2016, 10:48:21
|- - b4rt3kk   Cytat(brzanek @ 20.10.2016, 11:48:21 ...   20.10.2016, 20:18:08
- - Tomplus   dodaj do tablicy: table_hours_weather kolumnę miej...   20.10.2016, 11:35:18
- - brzanek   ok a więc mam takie tabele. [SQL] pobierz, plainte...   22.10.2016, 11:40:56
- - Tomplus   - wszystkie kolumny jako utf-8, a tabela jako lati...   22.10.2016, 13:06:27
- - brzanek   Racja poprawiłem [SQL] pobierz, plaintext CREATE T...   22.10.2016, 20:13:39
- - Tomplus   wyświetl sobie poprzez echo treść lub print_r, jeż...   22.10.2016, 22:22:48
- - brzanek   Dziwne polecenie [PHP] pobierz, plaintext $add = ...   23.10.2016, 10:15:15
- - Tomplus   A po co aktualizujesz? Nie lepiej dodać nowe rekor...   23.10.2016, 11:21:48
- - brzanek   Może racja a więc w tabeli prognoza będę dodawał n...   23.10.2016, 11:47:25
- - Tomplus   Wystarczy jedna funkcja gdzie parametrem jest mia...   23.10.2016, 13:30:39


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 28.12.2025 - 15:32