file_get_contents и timezone

sentenello

Registered
Здравейте,
вземам информация от един сайт но той си има да си нагласиш часовата зона, и мисля че е с js . Въпроса ми е как да задам на file_get_content да взема информация с точно определена зона.

П.С. От сорса успях да разбера само че линка за друга часове зона става..
saita.com/?timezone=

така и не успях да разбера какъв точно трябва е за да вземам информацията в исканата от мене ГМТ +2
 
PHP:
file_get_contents("saita.com/?timezone=Europe/Sofia");
Аз не разбрах какъв е проблемът? :idea:
 
Само съм си мислел, че съм написал какво точно искам :D

ИСКАМ :) да вземам информацията от точно определена часова зона, затова се опитвам да разбера какъв точно е линка на сайта с ГМТ +2..

Нещо като това което казва @anonimen, но неговия вариант го пробвах още тогава и не стана.
 
Естествено че няма да стане. Всъщност проблема ти (до колкото разбирам) е, че не знаеш какво точно искаш - няма никакъв смисъл потребител да кара даден сай да каже на каква зона е, а точно обратното - сайта трябва да разбере всеки един потребител на каква часова зона е. Добра идея е сайта да се забие на UTC+0 (Гринуич), като за всеки потребител да се прави опит за определяне на неговата заона и ъответно преравняване към него на всички часове. А как да разбереш часовата зона ка клиента - има разни механизми, но най-добре да се разботи с потребителски регистрации, където всеки сам да си посочва зоната...
 
lamerko каза:
Естествено че няма да стане. Всъщност проблема ти (до колкото разбирам) е, че не знаеш какво точно искаш - няма никакъв смисъл потребител да кара даден сай да каже на каква зона е, а точно обратното - сайта трябва да разбере всеки един потребител на каква часова зона е. Добра идея е сайта да се забие на UTC+0 (Гринуич), като за всеки потребител да се прави опит за определяне на неговата заона и ъответно преравняване към него на всички часове. А как да разбереш часовата зона ка клиента - има разни механизми, но най-добре да се разботи с потребителски регистрации, където всеки сам да си посочва зоната...
Всъщност добре го е обяснил просто не е дал цялото инфо. Та функцията която променя времевата зона на сайта е със създаване на бисквитка - тоест JS:
[js]
function set_timezone(offset)
{
setCookie('my_timezone', offset, 365, '/', '', '' );
location.reload();
}
[/js]
Като offset приема 0,+1,+2... и така нататък. Въпросът му ще е как да подава на въпросната функция да сменя бисквитката когато използва file_get_contents(). Според мен първо трябва да посети сайта примерно със cURL след което вече щ е се е създала бисквитка която ще е в неговият браузър и на която знае името и по някакъв начин трябва да я обработи като промени времето след което прави file_get_contents или взимане на кода отново с cURL и горе долу мисля че може да се получи.
 
Ако става въпрос за парсване на някакви данни - нямаш достъп до логиката на конкретния сайт и просто трябва да налучкаш зоната. Ако е за потребителски сайт - продължавам да не разбирам какво го топли потребителя каква зона е сайта...
 
sentenello каза:
Само съм си мислел, че съм написал какво точно искам :D

ИСКАМ :) да вземам информацията от точно определена часова зона, затова се опитвам да разбера какъв точно е линка на сайта с ГМТ +2..

Нещо като това което казва @anonimen, но неговия вариант го пробвах още тогава и не стана.
Дай линк към сайта
 
lamerko каза:
Ако става въпрос за парсване на някакви данни - нямаш достъп до логиката на конкретния сайт и просто трябва да налучкаш зоната. Ако е за потребителски сайт - продължавам да не разбирам какво го топли потребителя каква зона е сайта...
Ммм бърка човека защото информацията която взима от сайта Х е чувствителна на тема време и е различна във всяка една зона. Затова човека се опитва да налучка начин да взима информацията за всяка една зона но просто кодът на страницата на сайта от който се взима информацията не е удобен или поне не позволява налучкването и. Пратих как се създава бисквитката но реално погледнато нещата са си дооста по-сложнички от колкото изглеждат.
 
Ако става въпрос за парсване на някакви данни - нямаш достъп до логиката на конкретния сайт и просто трябва да налучкаш зоната.

Как ще накараш въпросния сайт betexplorer, който предполагам не е ваш, да изпълни setCookie('my_timezone', offset, 365, '/', '', '' ); или нещо подобно, свързано с бисквитки? Все още не разбирам. Както и да е - пускам си нещо да гледам :)
 
lamerko каза:
Ако става въпрос за парсване на някакви данни - нямаш достъп до логиката на конкретния сайт и просто трябва да налучкаш зоната.

Как ще накараш въпросния сайт betexplorer, който предполагам не е ваш, да изпълни setCookie('my_timezone', offset, 365, '/', '', '' ); или нещо подобно, свързано с бисквитки? Все още не разбирам. Както и да е - пускам си нещо да гледам :)
Винаги, може да се ползва Live header но това е друга тема. Просто идеята е да се нацели някакъв начин за да се изкара информацията (автоматизирано) за дадената тайм зона. :)
 
sentenello каза:
@dakata_92 ви обясни това което аз не можах..

линка е http://www.betexplorer.com/next/soccer/
Има сайтове които предлагат такава услуга срещу линк към тях който може лесно да се премахне. Утре ще ти покажа някой друг пример
 
Добре де, какъв е проблема да изпратиш с хедър каква ти е часовата зона, т.е. съдържанието да не се взема с file_get_contents, а със cURL? и си решаваш проблема и ти ги извежда с бг часова зона, а тва как ще го вземеш на потребителя вече е друга тема, че не разбрах и аз точно какво трябва да стане. Ще вляза аз в сайта от щатите да ти гледам в твоя сайт какви са резултатите и ти да дръпнеш инфото от другия сайт, ама часовете да са като за щатите ли ?
 
Защо смятате, че даден сайт е длъжен да се съобразява с вашите заявки? Ако въпросния сайт няма определена функционалност за зоните, то той ще игнорира напълно вашите напъни. В случая вие сте обикновенни клиенти - получавате това, което сайта реши да ви подаде, а не това, което вие искате. И за конкретния сайт - не знам дали има някаква имплементация за зоните, но така или иначе щом става въпрос за спортни събития - просто виже часа на даденото събитие към българско време и сте готови със зоната :)
 

Back
Горе