Hirdetés
Új hozzászólás Aktív témák
-
Brett001
aktív tag
Sziasztok!
Először írok ide, és jelzem, hogy nem tanultam sem php, sem MySQL programozást, bár egy picit mindkettőből elsajátitottam autodidakta módon. Mondjuk 0,1 %- ot
Nos röviden a helyzet az, hogy van egy meteorológiai állomásom, amihez van egy Weather Display (WD) nevű program ami usb-n keresztül le tudja a mért adatokat tölteni. Van hozzá egy olyan plug-in is amely képes az adatokat MySQL adatbázisba feltölteni. Nos csináltam a gépen egy webszervert (localhost) WAMP 2.4-el; phpmyadminnal létrehoztam az adatbázist, alá egy táblát és program szépen tölti is oda az adatokat. A neten a külföldi időjárás kedvelők oldalain pedig lehet kis kész php scripteket letölteni, amik ebből a WD programmal gyűjtött adatokból szép táblázatokat csinálnak, grafikonokat rajzolnak. Csak eddig elég béna grafikonos scripteket találtam. Most viszont egy francia csávó oldalán leltem egy nagyon jó php scriptet, ami szintén SQL adatbázisból dolgozik és a HighCharts segítségével nagyon látványos grafikonokat csinál. Csak a gond ott kezdődik , hogy ő más időjárás menedzselő progit használ. Az ő adatbázisában az időpont UNIX_TIMESTAMP formátumú és ennek megfelelően írta meg a scriptet. Az progim viszont az időpontot YYYYMMDDHHSS formában tölti fel az adatbázisba.
Ez olyan script részlete, ami kirajzolja az elmúlt 48 óra hőmérsékleti stb. adatait.
<?php
// appel du script de connexion
require("mysql_connect.php");
// On récupère le timestamp du dernier enregistrement
$sql="select max(datetime) from wx_data1";
$query=mysql_query($sql);
$list=mysql_fetch_array($query);
// On détermine le stop et le start de façon à récupérer dans la prochaine requête que les données des dernières xx heures
$stop=$list[0];
$start=$stop-(86400*2);
// Récupération des données sur les dernières 48 heures avec un tri ascendant sur le timestamp
$sql = "SELECT datetime, temperature, current_windchill, dew_point_temperature, heat_index FROM wx_data1 where datetime >= '$start' and datetime <= '$stop' ORDER BY 1";
$query=mysql_query($sql);
$i=0;
while ($list = mysql_fetch_assoc($query)) {
if (date("I",time())==0) {
$time[$i]=($list['datetime']+3600)*1000;
}
else {
$time[$i]=($list['datetime']+7200)*1000;
}
$temperature[$i]=$list['temperature']*1;
$current_windchill[$i]=$list['current_windchill']*1;
$dew_point_temperature[$i]=$list['dew_point_temperature']*1;
$heat_index[$i]=$list['heat_index']*1;
$i++;
}
?>A lényeg ugye a $sql="select max(datetime) from wx_data1"; -nál a datetime oszlop neki UNIX nekem meg YYYYMMHHDDSS formátumú.
Milyen php parancsot kell itt módosítani, hogy ne UNIX időt várjon bejövő adatnak? Gondolom az utána jövő szorzás összeadás stb. is a UNIX dátum formátumra van írva.
Vagy gondolom lehet olyant is csinálni, hogy beírni egy normál időt kiolvasó parancsot, aztán azt átkonvertálni unix_timestamp-pá, amiből tovább dolgozik a script.Bocs a hosszért, meg ha nem megfelelő kifejezéseket használtam.
Lamer vagyok na!
A segítséget előre is köszönöm.
Új hozzászólás Aktív témák
- Afox Geforce Rtx 3080 10g - 6 hónap garancia
- Gigabyte rx6700 xt 12G Gaming OC - 6 hó garancia
- RTX4080/ Ryzen7 8700F/ 96GB DDR5 alapú konfig/ garancia/ ingyen foxpost
- ISO - MAGYAR PBT keycap készlet mélyen áron alul
- BESZÁMÍTÁS! MSI B760 i7 13700K 32GB DDR4 2TB SSD RTX 4080 16GB be quiet! 500DX Seasonic 750W
- Geforce GTX 1050, 1050 Ti, 1060, 1650, 1660 - GT 1030 - Low profile is (LP)
- GYÖNYÖRŰ iPhone 11 Pro 64GB Space Grey -1 ÉV GARANCIA - Kártyafüggetlen, MS2050, 100% Akkumulátor
- Akciós Windows 10 pro + Office 2019 professional plus csomag AZONNALI SZÁLLÍTÁS
- Bomba ár! Dell Latitude 5495 - Ryzen 5 I 8GB I 256SSD I 14" FHD I HDMI I Radeon I Cam I W10 I Gari
- REFURBISHED - HP USB-C Dock G4 docking station (L13899-001)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest