Nu gasesc scriptul pentru meteo de pe pagina principala. Il ai pe site?
Scuze de intrebare.
Script meteo
-
- Mesaje:176
Script meteo
„Uneori o greşeală poate fi tot ce este necesar pentru o realizare valoroasă.” — Henry Ford
MarPlo
Mesaje:4343
Vezi scriptul de la pagina: Script Meteo cu date de la Yahoo .
asistentu
Mesaje:1
Salut
Din pacate scriptul tau la mine nu mai functioneaza si-mi da eroarea:
A functionat impecabil cateva zile.
Din pacate scriptul tau la mine nu mai functioneaza si-mi da eroarea:
Cod: Selectaţi tot
Fatal error: Uncaught exception 'Exception' with message 'DateTime::__construct() [<a href='datetime.--construct'>datetime.--construct</a>]: Failed to parse time string (Sat, 03 Nov 2012 9:59 pm ET) at position 25 (E): The timezone could not be found in the database' in /home/hoster/public_html/xxxxx/vremea/meteo_yahoo.php:78 Stack trace: #0 /home/hoster/public_html/xxxxx/vremea/meteo_yahoo.php(78): DateTime->__construct('Sat, 03 Nov 201...') #1 /home/hoster/public_html/xxxxx/vremea/meteo_yahoo.php(120): reDataZi(Array, Array, 'Sat, 03 Nov 201...') #2 /home/hoster/public_html/xxxxx/vremea/meteo_yahoo.php(155): meteoYahoo->getXMLdata() #3 /home/xxxxx/public_html/xxxxx/vremea/meteo_yahoo.php(208): meteoYahoo->yMeteoHTML() #4 /home/xxxxx/public_html/xxxxx/vremea/test.php(2): include('/home/hoster/pu...') #5 {main} thrown in /home/xxxxx/public_html/xxxxx/vremea/meteo_yahoo.php on line 78
MarPlo
Mesaje:4343
Din ce vam citit pe internet, acea eroare este de la un "bug" PHP in versiunea 5.3 . Cred ca a fost corectat in PHP 5.4.
Daca a functionat la inceput, cateva zile, apoi a aparut eroarea, cred ca hosting-ul unde e site-ul a facut update la PHP cu versiunea 5.3 .
Rezolvare:
Inlocuieste aceasta linie de cod (78):
Cu aceasta:
- Sau descarca script-ul din nou, fiindca e modificat cu acest cod.
Daca a functionat la inceput, cateva zile, apoi a aparut eroarea, cred ca hosting-ul unde e site-ul a facut update la PHP cu versiunea 5.3 .
Rezolvare:
Inlocuieste aceasta linie de cod (78):
Cod: Selectaţi tot
$obj_date = new DateTime($data);
Cod: Selectaţi tot
$obj_date = new DateTime(null, new DateTimeZone('Europe/Bucharest'));
nicusorilie
Mesaje:17
Felictari! Scriptul e excelent (si de cand cautam unul bun, care sa functioneze si sa arate si corect).
Insa, cantitatea de informatie e prea mare si as vrea sa renunt la o parte din ea si nu stiu ce si cum trebuie sa fac.
Mai exact, vreau:
- sa nu imi mai arate sus numele orasului subliniat (sa zicem ca e pentru Bucuresti, si eu stiu ca e pentru Bucuresti; asa cum e in fisierul de test);
- sa imi arate DOAR poza si temperatura (si poate si descrierea (de ex: cer senin)) si nu si presiunea, vantul etc.
Se poate asa ceva?
Multumesc anticipat.
Insa, cantitatea de informatie e prea mare si as vrea sa renunt la o parte din ea si nu stiu ce si cum trebuie sa fac.
Mai exact, vreau:
- sa nu imi mai arate sus numele orasului subliniat (sa zicem ca e pentru Bucuresti, si eu stiu ca e pentru Bucuresti; asa cum e in fisierul de test);
- sa imi arate DOAR poza si temperatura (si poate si descrierea (de ex: cer senin)) si nu si presiunea, vantul etc.
Se poate asa ceva?
Multumesc anticipat.
MarPlo
Mesaje:4343
Se poate daca stii cat de cat HTML si macar putin PHP.
In fisierul "meteo_yahoo.php" editezi /modifici codul HTML care e adaugat in variabila $re_html, liniile 164-175.
- Astfel de modificari si le face fiecare dupa cum stie.
In fisierul "meteo_yahoo.php" editezi /modifici codul HTML care e adaugat in variabila $re_html, liniile 164-175.
- Astfel de modificari si le face fiecare dupa cum stie.
nicusorilie
Mesaje:17
As avea nevoie sa afisez si ora la care rasare si apune soarele.
Problema mea este ca aceste doua informatii doresc sa le afisez intr-un loc, separat de locul unde imi apare pictograma meteo, cu temperatura si descrierea curenta.
Am incercat sa declar inca o variabila $re_html1, dar mi-am cam prins rau urechile, si nu reusesc acest lucru.
Am nevoie de 2 scripturi (de fapt acelasi, pe care sa il "sparg" in doua si sa il apelez bucata corepsunzatoare acolo unde vreau sa o afisez) sau "merge" si cu unul singur? Se poate asa ceva?
Multumesc.
Problema mea este ca aceste doua informatii doresc sa le afisez intr-un loc, separat de locul unde imi apare pictograma meteo, cu temperatura si descrierea curenta.
Am incercat sa declar inca o variabila $re_html1, dar mi-am cam prins rau urechile, si nu reusesc acest lucru.
Am nevoie de 2 scripturi (de fapt acelasi, pe care sa il "sparg" in doua si sa il apelez bucata corepsunzatoare acolo unde vreau sa o afisez) sau "merge" si cu unul singur? Se poate asa ceva?
Multumesc.
MarPlo
Mesaje:4343
In functia yMeteoHTML(), datele pentru rasarit si apus sunt in $meteo_data['rasarit'] si $meteo_data['apus'].
Ca idee, se poate crea o proprietate in clasa, inainte de __construct(), de exemplu:
Iar in functia yMeteoHTML() se adauga datele meteo in acea proprietate:
Si se foloseste acea proprietate cu datele meteo unde vrei, chiar si in afara clasei.
- Sper sa te descurci, mai departe asi vrea sa nu ma mai bag pe acest subiect.
Ca idee, se poate crea o proprietate in clasa, inainte de __construct(), de exemplu:
Cod: Selectaţi tot
public $meteo_data = array();
Cod: Selectaţi tot
$this->meteo_data = $meteo_data;
Cod: Selectaţi tot
$rasarit = $meteo_yahoo->meteo_data['rasarit'];
nicusorilie
Mesaje:17
Multumesc pentru raspuns!
Pana acum nu am reusit... dar mai incerc...
Pana acum nu am reusit... dar mai incerc...
MarPlo
Mesaje:4343
O alta idee, poate mai usoara pt. tine, poti face ca variabila $re_html din yMeteoHTML() sa fie un array cu mai multe coduri /parti html.
De exemplu:
Apoi se retine rezultatul dat de yMeteoHTML() intr-o variabila ce va avea acel array, si apelezi din ea separat ce parte vrei.
- Dar trebuie sa stii sa modifici la sfarsit in script ca sa adaptezi codul de afisare la aceasta varianta.
De exemplu:
Cod: Selectaţi tot
$re_html[0] = 'cod html date meteo';
$re_html[1] = 'alt cod html, cu alte date meteo';
Cod: Selectaţi tot
$meteo_yahoo = new meteoYahoo($loc);
$meteo_html = $meteo_yahoo->yMeteoHTML();
echo $meteo_html[0];
echo $meteo_html[1];
nicusorilie
Mesaje:17
In primul rand, multumesc din nou pentru raspuns (pentru ca am inteles dorinta Dvs exprimata mai sus si o respect).
In adevar, e mai "digerabila" (sau accesibila) pentru mine cea de a doua varianta. Momentan nu am ajuns la nici un rezultat, pentru ca inca ma mai chinui sa descifrez ultima parte din script si sa vad cum pot face sa afisez corespunzator datele.
Sper sa revin cu vesti bune!
In adevar, e mai "digerabila" (sau accesibila) pentru mine cea de a doua varianta. Momentan nu am ajuns la nici un rezultat, pentru ca inca ma mai chinui sa descifrez ultima parte din script si sa vad cum pot face sa afisez corespunzator datele.
Sper sa revin cu vesti bune!
nicusorilie
Mesaje:17
Bun gasit, din nou.
In setul de date meteo oferit de cei de la Yahoo, exista si informatii legate de soare, de ora de rasarit si de apus a acestuia.
Se stie ca aceasta depinde de anotimp, ora de vara/iarna si, in special, de pozitia geografica (longitudine, latitudine), ca punct de observatie, dar oare care sunt punctele de observatie de referinta, ca sa zic asa? Observatoarele astronomice? Anumite statii meteo? Centrul unui oras (km 0)? Alte puncte?
Astfel, am intalnit surse care, tabelar, dau valori apropiate, dar diferite. Si, intrebarea/curiozitatea era de ce? Care din date este cel mai exact? Nu acum ca ar conta acum o diferenta de 1-2 min, in plus sau in minus, ca doar nu sta nimeni la mm, sau cronometrul in mana, sa vada ca soarele rasare fix la ora, min si sec X. Si nici intr-un domeniu care eventual ar avea nevoie strict de informatii precise (naval, militar...?) nu suntem. Era deci, cum am mai zis, o curiozitate, de unde isi ia fiecare referinta, pe ce criterii si care ar fi mai bune/precise?
Astfel, de exemplu, am intalnit urmatoarele seturi de date rasarit-apus (pentru o anumita zi, din mai 2014 - Romania - Bucuresti)
05:53 si 20:31
05:56 si 20:29
05:53 si 20:29 (Yahoo)
Multumesc
In setul de date meteo oferit de cei de la Yahoo, exista si informatii legate de soare, de ora de rasarit si de apus a acestuia.
Se stie ca aceasta depinde de anotimp, ora de vara/iarna si, in special, de pozitia geografica (longitudine, latitudine), ca punct de observatie, dar oare care sunt punctele de observatie de referinta, ca sa zic asa? Observatoarele astronomice? Anumite statii meteo? Centrul unui oras (km 0)? Alte puncte?
Astfel, am intalnit surse care, tabelar, dau valori apropiate, dar diferite. Si, intrebarea/curiozitatea era de ce? Care din date este cel mai exact? Nu acum ca ar conta acum o diferenta de 1-2 min, in plus sau in minus, ca doar nu sta nimeni la mm, sau cronometrul in mana, sa vada ca soarele rasare fix la ora, min si sec X. Si nici intr-un domeniu care eventual ar avea nevoie strict de informatii precise (naval, militar...?) nu suntem. Era deci, cum am mai zis, o curiozitate, de unde isi ia fiecare referinta, pe ce criterii si care ar fi mai bune/precise?
Astfel, de exemplu, am intalnit urmatoarele seturi de date rasarit-apus (pentru o anumita zi, din mai 2014 - Romania - Bucuresti)
05:53 si 20:31
05:56 si 20:29
05:53 si 20:29 (Yahoo)
Multumesc