CATEGORII DOCUMENTE |
Asa cum probabil ai observat, puterea documentelor HTML rezida in modul in care se realizeaza legaturile intre ele. In cele ce urmeaza am sa prezint modul in care se realizeaza astfel de legaturi. O legatura dintre doua documente HTML se numeste hiperlegatura (termenul vine de la legatura intre documente hipertext). Uneori se foloseste direct termenul de legatura (acest lucru l-am facut si eu), termen ce se refera strict la hiperlegaturi.
In HTML definirea unei hiperlegaturi se face utilizand elementul A (Anchor = Ancora). In functie de atributul utilizat, o ancora poate defini o legatura catre un alt document HTML sau poate defini un anumit loc din cadrul unui document HTML, loc in care dorim sa puncteze o legatura. Inainte de a vedea ce inseamna fiecare lucru in parte, mai jos sunt prezentate cateva dintre atributele unei ancore (elementul A):
Atribut |
Semnificatie |
Valoare |
HREF |
adresa URL a resursei la care se face legatura numele acesteia |
URL |
NAME |
defineste o ancora |
sir de caractere |
TARGET |
indica cadrul in care va fi afisat continutul unei legaturi |
_blank | _self | _top | _parent | sau un nume dat de realizator |
TITLE |
ofera o descriere a legaturii |
text |
CHARESET |
indica modul in care sunt codificate caracterele in fisierul la care se face referire |
ISO-8859-1, ISO-8859-2, etc |
ACCESSKEY |
defineste o tasta la a carei apasare se actioneaza legatura. Nu este suportat de toate browser-ele |
un caracter exprimat in codarea UNICODE sau o entitate |
SHAPE |
forma geometrica utilizata la definirea unei harti imagine pe partea de client |
rect | circle | poly | default |
COORDS |
coordonatele modelului geometric utilizat la definirea unei harti imagine |
pixeli |
onfocus, onblur, onmouseout, onmouseover, onclick, etc |
evenimente intrinseci. Intrucat valoarea acestor atribute nu poate fi decat un script, ele vor fi prezentate amanuntit in tutorialul JavaSCript. |
scripturi |
Observatie: hiperlegaturile nu sunt utilizate doar pentru a lega pagini HTML. La fel de bine o legatura poate puncta si catre fisiere non-HTML (de ex. fisiere grafice, fisiere in format Adobe Acrobat, etc). Spre sfarsitul lectiei am abordat si aceasta problema
Pentru a nu complica lucrurile cu discutii aprofundate despre ce este si ce nu este un URL, am preferat sa trec direct la prezentarea unui exemplu concret de realizare a unei legaturi. Ceea ce este mai jos defineste o legatura catre un motor de cautare romanesc:
|
motor de cautare
Asa cum se poate vedea, atunci cand o ancora are un atribut HREF ea va defini o legatura catre un alt document HTML a carui adresa (URL) este valoarea atributului HREF. Partea vizibila a legaturii, adica textul curins intre tag-urile <A> si </A>, este diferentiata de restul textului in sensul ca va avea alta culoare si, eventual, va fi subliniata. Intrucat, prin utilizarea CSS, se poate lucra foarte mult asupra formai de prezentare a unei legaturi, nu se mai poate spune cu certitudine ca textul unei legaturi va fi subliniat. Aceasta regula ar trebui respectata intrucatva dar, lucrurile depind in mare masura de gusturile realizatorului. In ceea ce priveste sintaxa folosita in exemplul precedent, trebuie retinute doua aspecte:
Dupa prezentarea acestui exemplu practic, mai jos este redata forma generala a unei legaturi:
|
unde:
HREF - (Hypertext REFerence = referinta hipertext) are drept valoare o adresa URL. Adresa URL este de forma:
|
https:// - protocolul de transfer pentru documente HTML. Practic, aceasta expresie este prezenta in toate adresele URL care fac trimitere catre alte documente HTML. Varianta actuala a acestui protocol permite si transferul de fisiere non-HTML. numedomeniu - reprezinta adresa la care dorim sa puncteze legatura. Asa cum vei vedea, denumirea corecta pentru numedomeniu este DNS (initialele de la Domain Name Space)
Observatie: Prezentarea notiunii de URL a fost facuta in lectia care trata lucrul cu imaginile in HTML. Daca nu ai parcurs acesata lectie este cazul sa arunci o privire asupra notiunii de URL. In ceea ce priveste adresele URL relative si absolute, principiul de realizare si de functionare este absolut identic cu cel prezentat in exemplele ilustrate. Singura diferenta este ca in loc de un fisier grafic putem avea un document HTML (si nu numai).
Atributul HREF poate avea drept valoare o adresa absoluta sau o adreasa relativa, in functie de localizarea fizica a fisierelor HTML dar si de preferintele realizatorului. In exemplul prezentat la inceput se face referire la o resursa externa (in sensul ca nu se afla pe acelasi site in care se regaseste pagina HTML din care am facut apelarea). In acest caz se spune ca legatura definita este o legatura externa. La fel de bine pot exista legaturi interne dar si legaturi locale.
In continuare vei vedea ce inseamna si in ce situatii se utilizeaza astfel de legaturi.
Legaturiile interne sunt legaturi in cadrul aceluiasi document HTML. Prin intermediul unor astfel de legaturi se faciliteaza navigarea in documentele lungi care, in absenta unor asfel de legaturi, ar necesita utilizarea intensiva a barei de scroll (bara de defilare din dreapta ferestrei). Un astfel de document ar putea fi o lista de intrebari frecvente (cunoscute si sub numele de FAQ) privitoare la un anumit domeniu de activitate. Desigur, acesta este un exemplu clasic. In practica exista mult mai multe situatii in care s-ar impune utilizarea legaturilor interne. De exemplu, chiar si lectiile din acest site s-ar preta foarte bine la aplicarea unor astfel de legaturi. Pentru a intelege legaturile interne, am sa prezint un exemplu practic de realizare a unei pagini cu intrebari frecvente. Pentru a realiza o astfel de lista, fiecare intrebare va fi definita drept o legatura care va puncta catre raspunsul corespunzator. Pentru aceasta va trebui sa definim exact locul unde dorim sa puncteze legatura (adica raspunsul intrebarii). Pentru a realiza acest lucru se utilizeaza elementul A cu atributul NAME asa cum se vede mai jos:
|
unde valoarea atributului NAME este un nume sugestiv pentru realizatorul paginii. In practica o astfel de constructie va arata ca mai jos:
|
Observatie: am preferat sa utilizez o lista ordonata. La fel de bine se puteau utiliza si alte elemente precum paragrafe, liste ordonate, etc. De asemenea, pentru a vedea la lucru exemplul precedent, exista o varianta completa a acestuia
Primele doua constructii (scrie cu albastru) constituie legaturi interne si vor fi tratate ca atare de browser, in sensul ca vor fi afisate diferit. Intrucat locul unde puncteaza legaturile se afla in acelasi document HTML, pe post de adresa URL nu vom avea decat expresia alcatuita din semnul diez (#) urmat de numele atribuit ancorei unde dorim sa puncteze aceasta legatura. O astfel de adresa URL se mai numeste si adresa URL cu fragment, unde fragmentul este reprezentat de expresia #nume. De retinut ca atunci cand o adresa URL puncteaza catre o ancora cu atributul NAME, prezenta semnului diez (#) inaintea numelui ancorei este absolut obligatorie. Ultimele doua constructii (cele in care am utilizat atributul NAME) reprezinta locul unde se va face saltul atunci cand se face clic asupra intrebarilor care corespund acestor raspunsuri. In cazul in care o ancora este utilizata cu atributul NAME (pentru a defini un anumit loc dintr-un document HTML) se mai spune ca elementul A defineste o ancora (sau ancora cu nume, sau ancora denumita). Valoarea atributului NAME trebuie sa fie unica in cadrul aceluiasi document dar pot exista si atribute cu aceeasi valoare, conditia fiind ca aceste valori care coincid sa nu se regaseasca in acelasi document (pagina).
Observatie: in situatia in care elementul A se utilizeaza cu atributul HREF, se mai spune ca elementul A defineste o legatura. Suna putin cam ciudat: 'o ancora defineste o ancora' si 'o ancora defineste o legatura'. In acest caz, de ce nu ar exista un alt element pentru a defini o legatura ? Intrucat scopul acestui tutorial este unul educativ, am fortat putin nota. In realitate o legatura este formata din doua ancore: o ancora sursa (cu atributul HREF) si o ancora destinatie (cu atributul NAME). In cazul in care nu se specifica nici o ancora de destinatie (adica o ancora cu atributul NAME) atunci se considera ca aceasta ancora va fi implicit inceputul documentului la care se face referire. In concluzie, o ancora defineste o ancora si atat. In cazul in care utilizam atributul HREF ancora este o ancora sursa (defineste o legatura), iar in cazul in care utilizam atributul NAME, ancora este o ancora destinatie ( defineste o ancora, ancora cu nume, ancora denumita, sau alta defitie pentru acest termen).
Spre deosebire de realizarea unei legaturi, la realizarea unei ancore cu nume efectul vizual nu este cu nimic diferit fata de restul textului. Din aceasta cauza trebuie sa fii foarte atent cand realizezi astfel de ancore. Spun acest lucru intrucat, omiterea tagului de sfarsit </A> , nu este sesizabila in cadrul browser-ului Internet Explorer, in schimb in Netscape Communicator (pana la varianta 4.72) acest lucru produce scrierea mai groasa a textului in anumite situatii.
Revenind la exemlul discutat, se poate constata cu usurinta ca nu este complet. Nu este complet intrucat nu are o optiune care sa ne permita revenirea la sectiunea dedicata intrebarilor. O asemenea optiune s-ar dovedi foarte utila in cazul unor documente foarte lungi (nu uita ca exemplul meu este unul clasic dar, in realitate, raspunsurile la intrebari ar putea fi foarte lungi). Pentru a realiza o astfel de lista, vom utiliza in cadrul unei ancore atat atributul HREF cat si atributul NAME. Constructia unei astfel de liste este redata mai jos:
|
Functionarea unei astfel de liste poate fi vazuta aici
Inainte de a trece mai departe, vreau sa mai fac cateva precizari referitoare la definirea si utilizarea unei ancore.
Sunt legaturi intre documente HTML aflate pe acelasi server (la aceeasi adresa). In aceasta situatie se pot utiliza atat adrese URL relative dar si absolute. De exemplu, daca dorim ca intr-un document intitulat exemplu.html sa plasam o legatura catre un alt document numit probe.html si care se afla intr-un director diferit (sa zicem mm), vom avea o constructie de forma:
|
Adresa URL putea fi scrisa si in forma absoluta, ca mai jos:
|
La fel de bine, intr-un document pot exista si ancore cu nume. In acesta situatie legatura care va puncta o astfel de ancora va contine adresa (relativa sau absoluta) la care se va adauga si numele ancorei. De exemlu, sa presupunem ca avem situatia ilustrata mai jos:
Daca in fisierul orase.html avem un titlu de forma:
|
in fisierul romania.html putem avea o construtie ca cea de mai jos, pentru a face trimitere catre ancora definita anterior:
|
Presupunand ca adresa unui astfel de site ar fi fost www.romania.ro, am fi putut avea adrese URL absolute de forma:
|
De cele mai multe ori, in cazul legaturilor locale se prefera utilizarea adreselor relative. Acest lucru este mult mai comod pentru cel ce realizeaza pagina si, in plus, mai confera si o serie de alte avantaje.
Sunt legaturi care puncteaza intodeauna catre resurse aflate pe alte servere de web (sau la alte adrese de internet). Pentru realizarea legaturilor externe se vor utiliza numai adrese URL absolute. In cazul in care in pagina de destinatie exista si ancore cu nume, adresa URL poate contine si numele acelei ancore. Mai jos se regaseste un astfel de exemplu:
|
Observatie: Trebuie avut in vedere ca nu poti avea drept de scriere asupra unei pagini gazduite pe un alt server (execeptand cazul in care ai avea mai multe site-uri). In aceasta situatie nu-ti ramane decat sa vizionezi codul sursa al paginii HTML la care doresti sa te legi, si sa vezi daca exista ancore cu nume. In cazul in care exista astfel de ancore, poti realiza o legatura catre o astfel de ancora. Cu toate acestea, nu este o practica onesta sa se realizeze astfel de legaturi, cu exceptia unor cazuri speciale. De cele mai multe ori, o legatura externa ar trebui sa puncteze la pagina de inceput a site-ului si nicidecum in mijlocul unei pagini din acel site.
In cele ce urmeaza am sa prezint trei legaturi externe care sunt identice din punct de vedere al actiunii realizate.
|
Toate cele trei variante prezentate mai sus sunt corecte si puncteaza catre aceeasi adresa. De exemplu, prima constructie difera de urmatoarea prin faptul ca nu s-a mai precizat expresia www, iar la sfarsit am mai adaugat un slash care indica separarea dintre directoare. In functie de configurarea serverului pe care este plasat site-ul, expresia www poate fi omisa. In mod similar stau lucrurile si in cazul semnului slash. Acesta va fi pus automat de multe browser-e (Netscape Communicator face acest lucru incepand cu versiunea 6.0) dar numai in anumite situatii asa cum am descris mai jos. In tot cazul, este bine sa se foloseasca ortografia completa (adica sa se includa toate slash-urile asa cum este exemplul scris cu albastru), pentru a evita erorile dar si pentru a face o impresie buna unui vizitator ceva mai avizat. In plus, slash-ul poate lipsi numai daca se face referire la pagina de start a unui site. Ca sa fiu mai explicit am sa spun ca pagina de start (index.html) este invocata automat daca este apelata o adresa URL ca cea prezentata in primele doua exemple. O atfel de adresa URL nu cuprinde o cale catre un anumit fisier sau, mai corect spus, este doar adresa DNS a site-ului apelat. Ultima expresie din exemplul dat mai sus include o adresa completa catre pagina de start a acestui site. De cele mai multe ori nu se foloseste o asemenea constructie, preferandu-se utilizarea adresei URL de baza. Acest lucru se datoreaza faptului ca serverele sunt configurate astfel incat pagina de start a unui site sa fie inserata in mod automat. De regula, pagina de start a unui site poarta denumiri sugestive precum index.htm(l), default.htm(l), home.htm(l), etc.
Observatie: fiindca veni vorba de pagina de start a unui site, trebuie sa ai in vedere ca aceasta va avea un nume predefinit. In concluzie, atunci cand te hotarasti sa realizezi un site, trebuie sa ai in vedere ca numele paginii de start trebuie sa coincida cu cel specificat in documentatia pusa la dispozitie de firma (serverul) care ofera gazduire pentru site-ul tau. Daca, de exemplu, prima pagina trebuie sa aiba numele index.html si tu vei numi prima pagina sub forma start.html, cei ce vor accesa site-ul tau vor fi intampinati de un mesaj de eroare.
Pe langa cele doua atribute esentiale (HREF si NAME), o ancora mai dispune si de alte atribute mai putin utilizate dar care uneori se dovedesc a fi foarte utile. Cateva dintre aceste atribute sunt prezentate in continuare.
TARGET - indica cadrul (in cazul de fata este vorba de fereastra browser-ului) in care va fi afisat documenul apelat de o legatura. Acest atribut poate avea valorile prestabilite _blank, _self, _parent si _top sau un nume pe care il atribuim unui cadru. Intrucat acest atribut este utilizat indeosebi in cazul unui site format din cadre (despre care nu am vorbit inca), doar valoarea _blank este utila in momentul de fata. O expresie de forma :
|
va face ca adresa invocata de aceasta legatura sa fie afisata intr-o noua fereastra a browser-ului. Fereastra din care s-a facut apelarea ramane deschisa in continuare. Valoarea _self va face ca afisarea site-ului (sau documentului) invocat de o legatura sa se realizeze in aceeasi fereastra (in acest fel va disparea documentul din care s-a facut apelarea). Daca nu se specifica atributul TARGET, acesta va fi considerat implicit ca avand valoarea target='_self'.
TITLE - acest atribut ofera informatii suplimentare despre o legatura atunci cand ne pozitionam cu mouse-ul asupra ei. Modul de afisare este identic cu cel al atributului ALT din cadrul tag-ului IMG. Atributul TITLE nu este interpretat de toate browser-ele. Netscape Communicator suporta acest atribut incepand cu versiunea 6.0. Exemplu:
|
pe langa atributele prezentate, exista si alte atribute mai putin utilizate precum rel, rev, type, shape, coords, etc. De exemplu, atribute precum shape si coords sunt utilizate numai la realizarea unei harti imagine (sau imagine de tip harta).
evenimentele intrinseci vor fi prezentate in sectiunea dedicata JavaScript. Aceste evenimente sunt asociate implicit unei ancore iar in cazul in care sunt specificate vor determina executarea scriptului aferent. De exemplu, evenimentul onmouseout indica faptul ca un eveniment se va produce atunci cand mouse-ul este mutat in afara unei legaturi. Actiunea care trebuie sa se produca in urma acestui eveniment este specificata intr-un script. Mai jos este un exemplu:
|
exemplu - daca vei trece cu mouse-ul peste aceasta legatura (nu te vei ori deasupra ei) va aparea o casuta de atentionare. Evenimentele intrinseci sunt disponibile pentru majoritatea elementelor HTML dar, momentan, consider ca nu este necesar sa le amintesc. In cazul elementului A am prezentat acest exemplu pentru a putea sa-ti faci o idee asupra notiunii de eveniment intrinsec.
Pe langa textul obisnuit se poate opta si pentru includerea unei imagini in cadrul unei legaturi. De regula, in cazul in care se foloseste o imagine pentru a reprezenta o legatura, se renunta la text. In schimb, informatiile suplimentare pot fi oferite prin intermediul textului alternativ. Acesta poate fi furnizat prin intermediul atributului TITLE, sau prin intermediul atributului ALT din cadrul tag-ului IMG. Ultima varianta este de preferat intrucat atributul ALT este interpretat si de Netscape Communicator. O legatura grafica se realizeaza prin plasarea unei imagini intre tag-urile unei ancore. De exemplu:
|
Dupa cum se poate vedea, cand o imagine este folosita pentru a reprezenta o legatura ea va fi inconjurata automat de o bordura albastra ca si cum ar sugera o legatura subliniata. Pentru a elimina aceasta margine vom utiliza atributul BORDER din tag-ul <IMG> si ii vom atribui valoarea zero.
|
rezultat:
Daca nu iti mai aduci aminte de anumite lucruri legate de includerea imaginilor in paginile HTML, am sa-ti reamintesc ca trebuie specificate si dimensiunile imaginii (atributele WIDTH si HEIGHT) chiar daca eu nu am facut-o. Numarul de imagini ce pot fi incluse in cadrul unei legaturi nu este limitat. De exemplu, se pot adauga mai multe imagini (mai multe tag-uri <IMG> impreuna cu fisierele grafice aferente) sau, in cazul in care dorim sa avem si text in cadrul unei legaturi, putem plasa un text inainte sau dupa tag-ul IMG, in functie de locul in care dorim sa apara textul. In tot cazul, utilizarea mai multor imagini pentru a reprezenta o singura legatura este un lucru destul de rar intalnit.
Prin intermediul unei legaturi se pot apela si alte resurse, diferite de clasicele fisiere HTML. Un exemplu foarte des intalnit ar fi o legatura care puncteaza catre o imagine. O astfel de legatura ar putea face ca o imagine mica sa reprezinte o legatura grafica catre aceeasi imagine dar la dimensiuni mult mai mari. Singura conditie ce trebuie indeplinita este ca fisierul grafic sa fie recunoscut de browser (fisiere .jpg sau .gif). Un exemplu de astfel de legatura se regaseste mai jos.
|
In cazul in care se omite textul alternativ este bine sa se includa si text in cadrul legaturii. De exemplu:
|
Broscuta in Zoom
In afara de imagini putem avea legaturi catre fisiere in diverse formate. De exemplu, putem avea legaturi care sa faca referire la fisiere audio, video, fisiere in format Acrobat Reader (fisiere cu extensia .pdf), etc. Mai jos este redat un exemplu de legatura care apeleaza un fisier video.
|
La apelarea unei asemenea legaturi browser-ul va cauta sa vada daca poate asocia extensia acestui fisier cu unul din programele disponibile pe calculatorul gazda. Aceste programe pot rula independent de browser sau pot fi disponibile chiar in browser (cunoscute sub denumirea de plug-in). Daca browser-ul stie ce program trebuie utilizat pentru citirea fisierului apelat, va trece la deschiderea programului in cauza si apoi se va reda filmul continut in fisierul test.mpg. In caz contrar va trece la salvarea fisierului dar numai dupa ce vizitatorul este intrebat daca accepta acest lucru.
Observatie: Comportamentul descris mai sus nu este identic pentru toate tipurile de fisiere si nici pentru toate browser-ele. De exemplu, pot exista situatii in care lucrurile sa se intample asa cum am descris mai sus dar pot exista si cazuri in care sa apara o casuta de dialog prin care vizitatorul sa fie intrebat daca doreste descarcarea fiserului apelat sau daca doreste deschiderea acestui fisier cu o anumita aplicatie.
Un alt exemplu ar putea fi o legatura catre un document in format PDF. Aceste documente pot fi vizionate cu softul Acrobat Reader. In cazul in care este instalat acest soft, fisierul va putea fi citit.
|
De cele mai multe ori dimensiunea unui fisier in format PDF sau a unor fisiere video si audio este considerabila. In aceasta situatie este de evitat a se utiliza astfel de fisiere, in special in cazul serverelor lente. In schimb se pot utiliza alte solutii. De exemplu, am putea utiliza o varianta HTML care sa se apropie cat mai mult de aspectul vizual al unui fisier in format PDF (acest lucru poate fi obtinut printr-o utilizare inteligenta a CSS). Un alt lucru de care trebuie tinut cont este ca un fisier PDF vizionat online nu este neaparat salvat. De aceea, o varianta mai buna ar fi sa comprimam fisierul (chiar daca rata de comprimare este foarte scazuta) si sa-l punem la dispozitie sub forma unei legaturi de genul :
|
La actionarea unei astfel de legaturi fisierul ZIP va fi salvat. Se evita in acest fel activarea plug-in-ului Acrobat Reader. In tot cazul, acesta este doar un sfat si nu o regula. O alta solutie (si cea mai des utilizata) ar fi introducerea unei note in care sa se precizeze modalitatea de salvare a unor astfel de fisiere. In acest fel se vine in ajutorul celor ce nu sunt familiarizati cu internetul.
Observatie: ceea ce urmeaza este mai mult un sfat care se adreseaza navigatorilor si mai putin realizatorilor de pagini web. Daca te intalnesti cu fisiere care nu doresti sa fie incarcate in browser (sau in plug-in-ul aferent) poti executa clic pe butonul drept al mouse-ului atunci cind esti pozitionat deasupra unei asemenea legaturi, iar din meniul care va aparea vei selecta save target as. In acest fel se va evita actionarea legaturii si implicit pornirea softului care ar putea citi un asemenea fisier. Acest lucru se poate dovedi foarte util cand ai putina memorie sau un procesor mai putin performant.Daca nu stii catre ce fisier puncteaza o legatura, atunci poti privi in bara de stare a browser-ului si acolo va scrie intreaga adresa URL a legaturii. Acest lucru se intampla numai cand te pozitionezi cu mouse-ul asupra legaturii in cauza.
Discutia despre ce fisiere ar trebui sau nu ar trebui oferite prin intermediul unei legaturi este mult mai lunga si necesita explicatii mai complexe. Am sa ma limitez doar la citeva idei principale:
fisierele care se preteaza a fi comprimate, este bine sa fie comprimate. Fisiere in format doc, xls, dbf, etc. se preteaza foarte bine la comprimare. In acest fel timpul necesar descarcarii se reduce considerabil.
realizarea legaturilor catre diferite tipuri de fisiere nu este intodeauna posibila. Acest lucru depinde in mare masura si de server. Cu alte cuvinte nu toate serverele suporta aceleasi tipuri de fisiere. De regula (dar nu obligatoriu), sunt suportate cele mai utilizate formate de fisiere precum fisiere de tip (.htm, .html, .gif, .jpg, .doc, .pdf, .zip, .mpg, .avi, etc.). Daca vrei sa folosesti un tip de fisier mai putin utilizat, este bine sa citesti documentatia serverului pentru a vedea daca acel tip de fisier este suportat. In caz contrar este posibil sa nu poti realiza o accesare corecta a acelui fisier. Totusi, in unele situatii este posibil ca fisiere ce nu sunt suportate de server sa poata fi transferate corect (deoarece acest lucru depinde si de browser). Cea mai sigura rezolvare este sa arhivezi fisierul. Formatul ZIP este suportat de marea majoritate a serverelor.
nu toate formatele de fisiere folosite in mod clasic se preteaza a fi utilizate si pe internet. Intrucat vitezele de transfer pentru utilizatorii casnici sunt limitate apar numeroase limitari, in special in domeniul multimedia. De aceea se prefera utilizarea unor formate specializate precum .mp3 (compresie foarte buna si sunet de calitate) sau .ra (real audio - permite un flux audio in timp real). Exista diverse metode de legare la fisierele de tip real audio. Pentru mai multe detalii poti accesa https://www.real.com/ De asemenea, utilizarea unor astfel de formate necesita si un soft specializat in decodarea fisierelor respective.
ar mai fi destule observatii de facut dar, daca vizitatorii acestui site o vor cere, am sa incerc sa realizez o pagina care va trata problemele legate de multimedia.
Cand am discutat despre imagini am fost nevoit sa fac o prezentare succinta a notiunii de URL. La momentul respectiv am considerat acea prezentare ca fiind suficienta. Acum, dupa ce am vorbit despre hiperlegaturi, este necesara o prezentare mai detaliata a notiunii de URL, pentru a putea completa subiectul care trateaza realizarea hiperlegaturilor. Am preferat sa revin asupra unor notiuni precum adrese relative sau adrese absolute considerand ca nu strica sa mai revezi aceste aspecte. De asemenea, am ancercat o prezentare putin mai tehnica (fara sa exagerez) a termenului DNS si IP intrucat le consider chestiuni de cultura generala pentru un realizator de pagini web. Daca nu consideri utile astfel de informatii poti omite paragafele in cauza.
URL reprezinta initialele de la Uniform Resource Locator care, in traducere, inseamna Locator Uniform de Resurse. Un URL indica locatia unei resurse (adica a unui fisier html, grafic, video, etc). Mai clar spus, un URL reprezinta adresa de internet unde se regaseste o anumita resursa. Datorita faptului ca un URL reprezinta in fapt o adresa, se mai foloseste si termenul de adresa URL in loc de URL. Acest termen este des utilizat chiar daca nu este intodeauna corect.
Observatie: uneori se prefera ca in locul notiunii de URL sa se foloseasca termenul URI (Universal Resource Identifiers). Nu este o greseala dar trebuie sa stii ca URL este un subset al notiunii de URI. Identificatorii Universali de Resurse (URI) cuprind momentan doar notiunea de URL intentionandu-se ca pe viitor sa cuprinda si alte tipuri de constructii pentru localizarea diferitelor resurse.
In continuare am sa prezint sintaxa unei adrese URL. Forma generala a unei adrese URL este redata mai jos:
|
Aceasta este forma generala a unei adrese URL. Un exemplu de adresa URL este redat mai jos:
|
protocol - protocolul utilizat pentru accesarea unei resurse ce
se regaseste pe internet. Cel mai utilizat este protocolul HTTP
(Hypertext Transfer Protocol). Acest protocol permite
accesarea si transferul paginilor de web (documente hipertext). Pe
langa HTTP se mai utilizeaza si
protocoale mai vechi precum FTP (File
Transfer Protocol) - pentru transferul fisierelor, TELNET,
GOPHER - pentru accesarea unui server Gopher,
etc. Dintre
toate protocoalele enumerate doar HTTP are o
utilizare foarte larga, restul fiind utilizate ocazional.
Pe langa aceste protocoale, exista si o serie de alte protocoale
nou aparute cu o utilizare inca restransa. Un exemplu de protocol nou aparut este protocolul pentru TV. In plus,
exista si protocoale specializate in transferul anumitor tipuri de
fisiere cum este, de exemlu, protocolul PNM
utilizat numai pentru accesarea fisierelor audio in format Real Audio..
In cadrul unei adrese URL termenul de protocol nu
defineste neaparat un protocol. In acel loc se poate plasa si o
constructie specifica necesara apelarii diverselor resurse
(de ex. un program de mail, apelarea unor grupuri de informatii, etc).
server_Gazda - adresa DNS (Domain Name Space) a serverului care gazduieste site-ul sau adresa de IP a acestui server. DNS (sau numele domeniului) este adresa unui domeniu scrisa cu caractere si este sub forma:
|
Aceasta
adresa se poate prezenta sub diverse forme si nu contine in mod
obligatoriu si expresia WWW (in
functie de modul in care este setat serverul).
In spatele unei adrese DNS se afla adresa de IP
si este echivalenta cu adresa DNS.
Adresa de IP este o modalitate de reprezentare
a adreselor folosita de protocoalele TCP/IP si difera de adresa DNS
(una din diferente) prin faptul ca este prezentata sub
forma numerica. O adresa IP
este unica pentru fiecare calculator sau domeniu aflat in reteaua
Internet si foloseste o schema de adresare pe 32 de biti (4
octeti). Forma generala a unei adrese de IP
este:
|
Intrucat adresa de IP este echivalentul numeric al adresei DNS, expresiile de mai jos sunt echivalente:
|
Numerele care apar in cadrul unei adrese IP
nu sunt intamlatoare. De exemplu, in cadrul
unei adrese IP prima portiune (w) descrie
reteaua insasi. Restul (x.y.z) descrie adresa echipamentului
(calculatorului) in cadrul retelei. In functie de valorile atribuite
primei portiuni (w) a unei adrese IP,
retelele sunt divizate in trei clase (sau licente) si anume: A,
B si C. Aceasta clasificare este facuta in functie de
complexitatea si dimensiunea retelei. De exemplu, in retelele
din clasa A prima parte a adresei de IP are
valori cuprinse intre 0 - 127. Intrucat definesc retele foarte mari
si complexe (eventual strategice), toate adresele de clasa A nu mai
sunt de mult timp disponibile. Beneficiarii unor astfel de adrese sunt
organizatiile guvernamentale americane, universitati, sau mari
companii ('cine imparte parte isi face'). Ma opresc aici ca
sa nu te agresez cu prea multe informatii. Nu este o tragedie
daca nu ai priceput cum sta treaba.
De regula se utilizeaza numai adrese DNS
fiind mult mai usor de retinut si de scris.
Observatie: licenta de utilizare a unui domeniu de adrese IP
este controlata de InterNIC (Internet Network Information Center). Cu alte cuvinte,
dupa ce achiti o taxa valabila doi ani, poti
cumpara propriul domeniu de internet. Dar nu asta am vrut sa spun. Ca
un cunoscator al internetului trebuie sa stii cum se poate afla
cine se ascunde in spatele unei adrese DNS sau a unei adrese de IP.
O conversie IP - DNS si invers se poate face cu asa numitele programe
'traceroute'. Un astfel de program are drept scop principal
afisarea nodurilor de internet prin care treci pentru a ajunge la o
anumita adresa dar poate fi utilizat si pentru a realiza o conversie
IP - DNS (daca exista o asemenea adresa DNS). Un
'traceroute' poate fi accesat pe serverul de la Stanford Linear Acceleration Center.
Exista posibilitatea de a afla chiar si numele posesorului unui anumit
domeniu. Acest lucru se face prin intermediul 'serviciului whois'
care, in fapt, reprezinta interogarea unor baze de date in care sunt
inregistrate aceste informatii. O astfel de baza de date poate fi
interogata la Whois.Userland.com pentru domenii cu extensia .com, .org, etc., iar pentru
domenii din Europa poti accesa RIPE Network
Coordination Centre. Ca o concluzie,
trebuie sa stii ca toate site-urile vizitate de tine vor putea
determina cu exactitate cine ai fost (prin ce provider de internet esti
conectat) si ce IP ai avut cat timp ai stat in retea. Desigur,
exista si exceptii de la regula dar, de cele mai multe ori,
cu putin efort se poate determina un eventual 'intrus nepoftit'.
port - portul serverului de web. De cele mai multe ori valoarea portului este 80, motiv pentru care nu se specifica in cadrul adresei URL.
cale - calea catre fisierul ce urmeaza sa fie accesat
numefisier - fisierul la care se face referire.
In continuare am sa prezint diferite tipuri de adrese URL si cand sunt utilizate aceste adrese.
Desi
cele prezentate pana acum au descris modul de realizare a legaturilor
intre documentele html, am sa revin pe scurt asupra acestui subiect.
Realizarea legaturilor catre documente HTML se face utilizand o
adresa URL care contine protocolul HTTP. O adresa URL care face referire la un document HTML este de forma:
|
Continuarea acestui subiect o cunosti (se foloseste elementul A cu atrib. HREF, ..). Trebie sa retii prezenta obligatorie a protocolului http.
Observatie: adresele URL pot fi din punct de vedere al scrierii, relative sau absolute. In cazul unei adrese URL relative, nu inseamna ca nu este specificat protocolul utilizat. Acest lucru nu este facut in mod explicit de catre realizatorul paginii de web. In schimb, acesta sarcina cade in seama browser-ului. Browser-ul va memora adresa URL de baza (acea adresa sub forma https://www.numesite.com/) si, folosind procedeul cunoscut sub numele de concatenare, va 'lipi' adresa URL relativa la adresa URL de baza. O descriere completa a notiunii de adresa URL absoluta si adresa URL relativa este realizata la sfarsitul acestei lectii in sectiunea 'Adrese URL relative si adrese URL absolute
Invocarea unui program de e-mail se face tot prin intermediul unei legaturi. De aceasta data adresa URL va contine in locul protocolului https:// o expresie mailto: (dispar cele doua slash-uri) urmata de adresa de e-mail la care dorim sa se trimita un anumit mesaj. Un exemplu de astfel de adresa URL este redat in cele ce urmeaza:
|
rezultat
webmaster@lumea3w.20m.com
In plus, o astfel de constructie URL mai poate contine si subiectul mesajului. Cu alte cuvinte, cand va fi apelat programul de e-mail prin intermediul unei asemenea legaturi, va aparea si campul Subject completat, pe langa adresa de e-mail care va fi in campul To. O astfel de constructie este prezentata mai jos:
|
De remarcat prezenta semnului intrebarii pentru a separa Subject de mailto. In campul Subject am fi putut avea o expresie mult mai lunga. Pentru a putea scrie asemenea expresii trebuie sa fie utilizate codurile escape pentru anumite caractere.
Observatie: codurile escape sunt reprezentarile caracterelor in hexazecimal. Forma generala a unui cod escape este %HH unde HH reprezinta valoarea hexazecimala. Mai jos sunt cateva caractere si codurile escape aferente.
Intrucat
o adresa URL poate contine caractere rezervate precum semnul diez (#)
- semnifica o adresa URL cu fragment, semnul intrebarii, etc.,
va trebui sa utilizam secventele escape acolo unde dorim sa
plasam anumite caractere interzise sau cu o anumita semnificatie
(cand sunt utilizate intr-o adresa URL). Ca sa fiu mai explicit am
sa spun ca aceste caractere nu pot aparea in numele unui
fisier, al unei adrese DNS, etc. decat daca sunt scrise in
hexazecimal. In schimb ele vor fi scrise ca atare
daca sunt utilizate in scopurile pentru care au fost rezervate (de ex.
semnul diez face trimitere la o ancora cu nume, etc).
Pentru
a nu ramane nelamurit am sa-ti arat un exemplu de
adresa URL care necesita utilizarea codurilor escape.
|
Mai jos este redata 'traducerea' adresei URL.
|
Plasata intr-o ancora, o astfel de adresa URL va putea fi vazuta in bara de stare a browser-ului in cazul in care te pozitionezi cu mouse-ul asupra legaturii. In functie de browser-ul utilizat se vor vedea caracterele in hexa sau normal (I.E. si N.C 6.0).
Exemplul anterior este unul imaginar in care se
apeleaza un script CGI. De cele mai multe ori reprezentarea caracterelor
in hexa se face cand se apeleaza astfel de scripturi. Ca sa
intelegi cate ceva din acel exemplu am sa mai spun ca ceea ce
urmeaza semnului intrebarii reprezinta o variabila (este
vorba de URL) necesara scriptului exemplu.cgi,
respectiv valoarea acesteia (adresa URL scrisa cu caractere in hexa).
Din fericire, in momentul de fata nu vei fi nevoit sa apelezi la
codruile escape decat in cazurile prezentate in continuare (dar nu este
obligatoriu). Alminteri imi nive greu sa cred ca cineva isi va
numi un fisier sub forma probe#1.html
sau ceva de genul asta.
De exemplu, pentru a specifica un subiect mai lung voi folosi o constructie de forma:
|
La apelarea legaturii webmaster ar trebui sa se deschida programul de e-mail instalat pe calculatorul tau si in cimpul Subject sa fie o expresie de forma:
|
In
exemplul precedent am folosit o adresa URL de tip 'mailto'. La o
astfel de adresa URL caracterele rezervate sunt semnul egal, semul
intrebarii si semnul apersand (&). In plus spatiile goale sunt
reprezentate in hexazecimal. Dupa cum vezi semnul diez (#) nu mai este
rezervat in acest tip de adresa URL.
Problema este ca semnul ampersand este un caracter rezervat in HTML
si in acest caz ar trebui sa folosim entitatea .
Ca sa fiu sincer nu vreau sa mai lungesc discutia dar, din cate
stiu, intr-o adresa de tip mailto se poate folosi semnul ampersand
fara a fi utilizata entitatea corespunzatoare. In tot cazul, la carte scrie ca acest caracter trebuie
specificat prin intermediul entitatii &.
Daca esti amator de teorie te las sa studiezi singur cea mai
recenta specificatie despre adresele URL de tip mailto,
specificatie ce se gaseste la adresa info.internet.isi.edu/in-notes/rfc/files/rfc2368.txt
Cele prezentate pana acum sunt lucruri standardizate in HTML si ar trebui interpretate corect de toate browser-ele si programele de e-mail. Precizarile care urmeaza au fost incluse relativ recent in specificatiile oficiale, drept urmare este foarte posibil sa nu fie interpretate corect de unele browser-e mai vechi.
Mergand putin mai departe, poti specifica nu numai subiectul unui mesaj de e-mail ci si celelalte campuri care sunt disponibile intr-un program de e-mail (campurile CC, BCC, BODY). Singura problema care intervine este ca aceste optiuni au fost incluse recent in standardul URL. Totusi, din probele efectuate de mine si din studiul realizat pe net, se pare ca precizarea unor astfel de campuri nu creeaza probleme deosebite cu toate ca nu este exclus contrariul.
Pentru a completa si celelalte campuri dintr-un e-mail trebuie sa tii cont de urmatoarele aspecte:
daca primele doua specificatii (mailto:adresa-mail?subject=text%20subiect) erau separate de semnul intrebarii, toate campurile ce urmeaza acestor doua specificatii trebuie separate de semnul ampersand (&), semn ce trebuie redat sub forma de entitate (&). De asemenea, trebuie retinut ca valorile atribuite campurilor de e-mail nu sunt cuprinse intre ghilimele.
includerea anumitor caractere precum un spatiu gol, semnul intrebarii, etc, trebuie realizata prin intermediul codurilor escape corespunzatoare. Acest lucru este valabil cand se doreste prezenta unor astfel de caractere in corpul mesajului, in adresa de e-mail, etc si nu in cazul in care ele sunt folosite pentru a realiza anumite delimitari asa cum am aratat in continuare.
Tinand cont de cele precizate mai sus, o legatura care va invoca un program de e-mail si care va cuprinde mai multe campuri completate va arata ca in exemplul urmator:
|
La
apelarea legaturii webmaster
in programul de e-mail ar trebui sa apara urmatoarele camuri:
To: webmaster@numesite.com
From: adresa ta de e-mail
Subject:Merge sau nu merge ?
Cc: webmaster1@numesite.com
Bcc:
Introdu adresa de email !
Inainte de a recurge la o asemenea legatura este bine sa verifici daca functioneaza corect toate codurile escape utilizate. Daca ai dubii asupra unora dintre ele, este bine sa nu te complici cu o astfel de legatura.
Ar mai fi cate ceva de adaugat la acest subiect dar ma opresc aici. Pentru moment cred ca am spus destule pentru a putea realiza o legatura 'mailto'. Nu uita ca o astfel de legatura nu trebuie sa cuprinda neaparat tot felul de optiuni 'exotice'. Este suficient sa cuprinda doar adresa de e-mail. Restul poate fi facut de vizitatori
FTP (File Transfer Pprotocol) este
un protocol folosit pentru transferul fisierelor de pe serverele de FTP.
Utilizarea protocolului FTP era foarte raspandita in perioada de
inceput a web-ului. De cand protocolul HTTP poate suporta si transferul
fisierelor, utilizarea protocolului FTP nu mai este asa de
raspandita. Aceasta nu inseamna ca nu se mai foloseste
deloc. In general toate firmele producatoare de software si mai
toti furnizorii de servicii internet (ISP) au servere de FTP de unde se
pot transfera diverse softuri gratuite sau de evaluare.
Forma unei adrese URL care face referire la un server de FTP este identica
cu adresa URL a unei pagini de web schimbandu-se doar protocolul (ftp://
in loc de https://). Mai jos este
redata forma generala a unei adrese URL:
|
De cele mai multe ori serverele FTP accepta orice vizitator (sunt servere anonime). Datorita acestui fapt, expresia (user:parola@) nu se specifica intr-o adresa URL care face trimitere catre un site FTP. La fel stau lucrurile si in cazul portului. Serverele FTP folosesc, de regula, portul 21. Nici acesta nu trebuie specificat. In concluzie, o legatura catre un site FTP va arata ca mai jos:
|
Intrucat nu am precizat un anumit fisier, la accesarea unei astfel de legaturi browser-ul va afisa toate directoarele ce se afla in radacina serverului. De aici poti sa cauti fisierul care te intereseaza desi este destul de greu. Cel mai bine este ca o adresa URL sa puncteze exact catre fisierul dorit.
O astfel de optiune este folosita destul de rar. Aceasta intrucat legarea la un grup de informatii (USENET) depinde in mare masura si de furnizorul de servicii internet. Forma unei astfel de legaturi este:
|
De exemplu, un grup de stiri este alt.internet.services.
Conventiile de numire a grupurilor de stiri se bazeaza pe o
structura ierarhhica. In sintaxa unui astfel de grup, primul grup de
litere reprezinta categoria din care face parte grupul de stiri. In
ex. dat de mine alt indica un grup de
informatii alternativ. La fel de bine exista si prescurtari
precum news - pentru stiri, rec - subiecte recreative, sci -
stiinta, etc. Ceea ce urmeaza primului grup de litere indica
mai precis subiectul abordat. In exemplul de fata este vorba de
internet.
Domeniul este foarte vast si l-am amintit pentru propria ta cultura.
Daca vei avea curiozitatea sa te apleci mai mult asupra acestui
subiect vei constata foarte repede cat de mare este numarul grupurilor de
stiri existente.
Serviciul GOPHER este un stramos al retelei WWW. Pe serverele GOPHER se regasesc fisiere de tip text. Cu timpul aceste fisiere au fost convertite in HTML iar serverele GOPHER au devenit servere de web. Cu toate acestea, chiar si in zilele noastre se mai pot gasi servere gopher functionale. De obicei, pentru cantitati mari de text care ar necesita multa munca pentru a fi convertite in format HTML, se prefera utilizarea serverelor GOPHER. Adresa URL care puncteza catre un server GOPHER va contine protocolul gopher://. In rest este identica cu o adresa URL clasica. In continuare este un exemplu de legatura catre un server gopher mentinut de guvernul argentinian:
|
O lista cu serverele GOPHER
existente la ora actuala se regaseste la adresa www.galaxy.com/GJ/ dar, dupa cum spuneam, multe servere gopher s-au transformat in
servere de web. In tot cazul, din lista existenta la galaxy.com nu am
putut regasi prea multe servere GOPHER iar
cele pe care le-am gasit nu puteau fi accesate. Pentru a economisi timp in
cautarea unor astfel de servere, mai jos am redat cateva adrese de servere
GOPHER operationale.
gopher://gopher.mcye.gov.ar/
gopher.unicom.com/11/gn-info
www.fsz.bme.hu/hungary/gopher.html
fatty.law.cornell.edu
Mai exista si alte tipuri de adrese URL care folosesc alte scheme de adresare decat cele prezentate de mine. Intrucat utilizarea unor astfel de adrese URL este aproape inexistenta, nu am mai pierdut timp cu prezentarea lor.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 2333
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved