»  Pagina principala  »  PHP si mysql »  Alte notiuni referitoare la expedierea unui formular

Alte notiuni referitoare la expedierea unui formular

In articolul precedent, am prezentat modul de creare a formularelor HTML care pot trimite date unui server. In continuare o sa va spun mai multe despre procesul de expediere a formularelor.

Inlocuirea unui buton cu o imagine
Aspectul unui buton de expediere este monoton si obisnuit. Daca aspectul paginii este important, puteti folosi o imagine in locul unui buton de expediere. O asemenea imagine se numeste buton imagine. Cand un utilizator executa clic pe buton imagine, datele din formular sunt trimise serverului, ca si cum utilizatorul ar fi executat clic pe un buton de expediere. Sintaxa pentru crearea unui buton imagine este:
<INPUT TYPE="IMAGE" SRC="url" NAME="text" ALIGN="aliniere">
Atributele SRC si TYPE sunt obligatorii; celelalte atribute sunt optionale. Atributul SRC determina adresa URL a fisierului care contine imaginea ce va fi afisata. Atributul NAME atribuie un nume controlului de tip buton imagine. Atributul ALIGN poate lua oricare din valorile top (sus), middle (la mijloc) sau bottom (jos) si specifica modul de aliniere a butonului imagine relativ la textul inconjurator.

Crearea unui buton de reinitializare
Uneori, este folositor ca utilizatorul sa poata executa clic pe un buton care sa stearga toate informatiile incluse intr-un formular. Un asemenea buton se numeste buton de reinitializare. Sintaxa este:
<INPUT TYPE="RESET" VALUE="text">
Unicul atribut obligatoriu este TYPE. Atributul optional VALUE specifica textul care va aparea pe suprafata butonului de reinitializare; daca atributul este omis, pe buton va scrie "Reset".

Utilizarea unei legaturi pentru a furniza date unui script
In afara de a expedia unui script datele dintr-un formular prin intermediul campurilor din formular, puteti expedia date cu ajutorul adresei URL a scriptului, asa cum se specifica in atributul ACTION al etichetei FORM. Pentru aceasta, atasati la sfarsitul adresei URL un semn al intrebarii (?) si apoi includeti o serie de perechi nume-valoare cu urmatoarea forma:
nume1=valoare1&nume2=valoare2&nume3=valoare3
Exemplul include numai trei perechi nume-valoare; cu toate acestea, puteti include oricate asemenea perechi doriti, in functie de limita impusa de browserul utilizatorului. Adresa URL rezultata se numeste sir de interogare si nu poate contine spatii. Daca doriti sa trimiteti un spatiu ca parte a unui sir de interogare, trimiteti in locul spatiului un semn plus (+). Iata un exemplu de sir de interogare care cere de pe server o anumita pagina inclusa in alta (in acest exemplu este vorba chiar de aceasta pagina):
http://www.php4.as.ro/pag.php?pagina=articole/28_creare_formular2.php
Adrersa de mai sus trimite scriptului inclus in pagina pag.php cererea de a include pagina de la adresa articole/28_creare_formular2.php. Puteti incerca sa deschideti direct pagina 28_creare_formular2.php folosind adresa URL urmatoare:
http://www.php4.as.ro/articole/28_creare_formular2.php
Aceeasi situatie este de exemplu cand incercati sa descarcati un fisier din pagina de download; se transmit 2 variabile (adresa pagini de unde a fost efectuat download-ul si numele fisierului zip pe care utilizatorul vrea sa il descarce. (Aflati mai multe citind si articolul 06 - Construieste un site cu PHP)
Daca doriti sa trimiteti unui script, prin intermediul adresei URL, caractere speciale precum un semn al intrebarii, un semn egal sau un ampersand, pentru a nu se crea confuzie si pentru a functiona corect, un sir trebuie codificat URL. Pentru a codifica URL un sir care contine o interogare, caracterele speciale se inlocuiesc cu echivalentele lor hexazecimale, precedate de un simbol procent (%). Pentru detalii, consultati documentul Request for Comments (RFC) 1738, disponibil la adresa www.rfc.net. Unele dintre cele mai comune caractere speciale si echivalentele lor codificate URL sunt prezentate mai jos. de exemplu, forma codificata URL a sirului "la mult ani!" este %22la multi ani%21%22.
Caracter special
Echivalent codificat URL
.
%2e
?
%3e
^
%5e
~
%7e
+
%2b
`
%2c
/
%2f
:
%3a
;

%3b

<
%3c
=
%3d
>
%3e
[
%5b
\
%5c
]
%5d
-
%5f
{
%7b
|
%7c
}
%7d
Tab
%09
Spatiu
%20
!
%21
"
%22
#
%23
$
%24
%
%25
&
%26
'
%27
(
%28
)
%29
@
%40
,
%60

Utilizarea scripturilor php in formulare
Odata am avut nevoie intr-un formular sa fie afisata initial data din ziua completarii formularului. Ma gandesc ca uneori o sa aveti si voi nevoie de anumite date (de exemplu la o comanda intr-un formular sa apara intr-un camp doar ceea ce exista in acel moment pe stoc, care stoc se gaseste in baza de date mysql de pe server). Iata ce trebuie sa faceti:

Exemplu
Rezultat
<form name="form1" method="post" action="">
Data curenta:
<input name="data" type="text" id="data" value="<?php $data=date("d-h-Y",time()); echo $data; ?>">
<br>
<br>
<input type="submit" name="Submit" value="Trimite">
</form>
Data curenta:

Dupa cum observati, la valoarea campului "data" am introdus un mic script php care citeste data curenta de pe server si o timite browserului, acesta o afiseaza in campul de text corespunzator. Puteti incerca si voi sa cititi anumite date dintr-un fisier txt sau din baza de date si sa le afisati in formular.
Daca doriti sa apara un mesaj in interiorul campului dar sa dispara cand un utilizator vrea sa introduca propiul lui text codul ar fi cam asa:

Exemplu
Rezultat
<form>
<INPUT name=test id="test"
onclick="this.value='';" value=cauta size=15 maxLength=30>
<INPUT name="submit" type=submit id="submit" value=GO>
</form>
Daca cineva incearca sa scrie ceva, textul "cauta" va dispare si va fi inlocuit cu mesajul introdus de utilizator.




Link-ul autorului:
www.tutoriale.far-php.ro


Acest articol face parte dintr-o serie de 2 articole:
» Crearea formularelor HTML
» Alte notiuni referitoare la expedierea unui formular

Comentarii




Voteaza acest articol!
 



Trimite un comentariu!

Nume *
E-mail *
Comentariu *
  Vreau sa fiu anuntat de urmatoarele mesaje la acest articol

Security image

Fanache A. Remus

www.farsoft.far-php.ro - portofoliu
http://www.farsoft.far-php.ro

Cloud tag

tutorial, photoshop, html, css, javascript, flash, php, mysql, grafica 3D, tutorial, coduri, scripturi, generator de coduri, cursuri php