Ovo sam malo nespretno/krivo napisao, pa da se ispravim.
Kao rezultat serverskog rada ne nastaje nužno HTML …nego plain text. Ali ako želimo poslati browseru nešto što će on dobro razumjeti, onda mu trebamo poslati HTML.
No možemo mi njemu poslati bilo kakav tekst …on će ga u najgorem slučaju prikazati takvog kakav mu stigne, ako ga ne prepozna kao validan HTML. A ako prepozna HTML, onda će ga znati pametno interpretirati, te nam ga prikazati u obliku web stranice.
Inače u praksi server redovito šalje i druge formate, kao što su npr. JSON, XML ili zaista plain text ako druga strana očekuje takav odgovor.
Za ovaj zadnji komad koda sam mislio da su navodnici greška, a eto objasnio si mi kako to treba ispravno gledati. Prije postavljanja sljedećeg koda moraću ga prvo provjeriti kroz HTML.
Tako je…ako nisi siguran koji je produkt php-a, samo baciš pogled na HTML i uvjeriš se što si dobio. S vremenom ćeš moći bolje predviđat kakav HTML se generira. A onda će bit ribe.
Kod ovog dijela koda koji mi lokalno radi ispravno, a na serveru pogrešno, nisam mogao naći ništa preko HTML-a. Radi se o jednoj JS funkciji koja treba da upiše vrijednosti u localStorage. Međutim, pomoću Debuggera u Inspect tools nađoh da mi na serveru koristi stari JS fajl (u kojem je ta funkcija) i izgleda mi da zbog toga ne radi ono što bi trebalo. Nije pomoglo ni da obrišem taj fajl na serveru i uploadujem novi. U Debuggeru i dalje prikazuje stari. Da li je to baš uobičajeno i kako bi se moglo riješiti?
Da, ovo je uobicajena stvar s kojom se svatko prije ili kasnije mora sresti. Radi se o tome da browser povlači js file iz cache memorije…kako nebi morao ucitavati svaki puta isponova sa servera. Pa ne vidi da je file izmjenjen.
Ili mozes osvjezit browser na način ctrl+F5 … to će rjesit problem na tvom browseru, ali ne i kod ostalih posjetitelja ako je projekt već u produkciji. Tako da ako zelis rjesit svima, onda kod poziva js fileea dodas u ime filea npr: file.js?v=1 …ovo iza upitnika kad se promjeni, natjerat ce browser da isponova povuce file.
Baš fora!
Dakle, ako sam dobro shvatio, potrebno je kod pozivanja fajla dodati u URL kao kad se vrijednosti varijabli šalju GET metodom. I nema veze što varijabla ne postoji, jer pošto se ona neće pojavljivati u kodu samim tim neće ni prijavljivati grešku?
EDIT: pretpostavljam da i promjena naziva fajla ili root foldera pomaže.
Radilo bi i kad bi promjenio ime file-a …ali onda moraš mijenjati na dva mjesta. Morao bi mijenjati i naziv filea i tamo gdje ga uključuješ.
Ovako samo na instrukciju uključivanja dodaš nešto nakon upitnika i radit će…i tamo updejtaš taj dio kada želiš osigurati da se vuče novi file.
(Browser bi to i sam ažurirao, ali nakon nekog vremena…dok mu se ne prohtije… Moguće da imaju i nekakve druge kontrole kako mu se određuje koliko i što će držati u cache memoriji.)
Btw…to je poprilično neugodan bug kada se prvi puta s time sretneš. Eto, preživio si to.
Dugo već planiram napraviti nekav popis tako neugodnih bugova, da se ljudi mogu upoznati sa njima na “pametniji” način …ali eto, nikako skupiti volje za to.
Vjerovatno ima negdje na bespućima interneta članak takvog tipa.
Ne mora biti samo unutar sita. Ja mogu npr. napravit site koji sluzi kao servis za nesto…a ti prilikom poziva mog servisa putem mog url-a unutra ubacujes i parametre koje ce servis obraditi.
Naravno, servis diktira koji parametri su u igri i sto prima.
Znam da jeste ali mislim da ovo isti primjer kao kod tebe jer ovako će korisniku sigurno doći novi file, a ne kao u tvome slučaju ostati stari iako si ga promijenio.
Mislim da sam to primjetio i web stranici Jutarnjeg lista.