Kreiranje onclick pomoću php

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.

1 Like

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.

Nego, gdje je ta riba? :grin:

1 Like

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. :slight_smile:

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. :slight_smile:

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.

Meni su ovi tvoji odgovori ogromna pomoć. Ono baš-baš pomoć. I hvala ti za trud i izdvojeno vrijeme.

Nekakve linkove sam nalazio na temu čestih grešaka, možda nekom početniku pomogne:



1 Like

Evo ti par kvalitetnih linkova za PHP development:

PHP.net
PHP widely used main code standards
Security
PHP the right way
PHP.net

Otprilike tim redom.

1 Like

Jel iz tog istog razloga kada učitamo neku webstranicu vidimo url tipa domain.com/?i=1 ?

To sam primjetio na početnoj stranici nakon instalacije Wordpressa.

Također, je li bolje, zbog istog razloga, testirati stranicu u incognito modu browsera?

URL je pomoćna alatka preko koje se mogu slati i podaci između stranica unutar jednog sajta. Ako ima veze sa tvojim pitanjem…

EDIT: Ustvari mislim da sam promašio poentu pitanja. :slight_smile:

Nope …u url-u je to (get) parametar.

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.

Da, ali url koji ne linka na file i ne vraća file …pa ovaj get parametar u urlu ne utjece da to bude novi file. Pošto web stranica nije file.

Znači ovo Tarakovo objašnjenje nije točno jer ovo nije get metoda?

Dobro je napisao to sto si citirao. :slight_smile:

1 Like

Može li odgovor i na ovo?