Poglavlje 3 3.1. Forme (Obrazci)
Poglavlje 3 3.1. Forme (Obrazci)
type="text"
name="v1"
size="40"
name="r1"
size="40"
maxlength="60">
</P>
<p align="center">razno:
<input
type="text"
maxlength="60">
</P>
<p> </P>
<table align="center">
<tr bgcolor=#cccccc align="center">
<td width=150>Student-ime i prezime</td>
<td width=15>POENI</td>
<td width=15>Oznaka smijera</td>
<td width=15>Trocifren broj indeksa</td>
<td width=15>email-adresa</td>
</tr>
<tr>
<td
align="center"><input
type="text"
name="s1"
size="20" maxlength="20"></td>
<td
align="center"><input
type="text"
name="p1"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="m1"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="i1"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="e1"
size="20" maxlength="20"></td>
</tr>
<tr>
<td
align="center"><input
type="text"
name="s2"
size="20" maxlength="20"></td>
<td
align="center"><input
type="text"
name="p2"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="m2"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="i2"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="e2"
size="20" maxlength="20"></td>
</tr>
<tr>
<td
align="center"><input
type="text"
name="s3"
size="20" maxlength="20"></td>
<td
align="center"><input
type="text"
name="p3"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="m3"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
name="i3"
size="8" maxlength="8"></td>
<td
align="center"><input
type="text"
size="20" maxlength="8"></td>
</tr>
name="e3"
<tr>
<td colspan="2" align="center">
<input type="submit" value="Obradi"></td>
</tr>
</table>
</form>
</BODY>
</HTML>
Skripta koja se poziva Primjer.php
<html>
<head><title>PHP obrada</title></head>
<body bgcolor="Blue" TEXT="Yellow">
<h1>PHP obrada</h1>
<?php
echo $_POST['v1'];
echo ", dobro došli!!!";
echo '<br>';
echo 'Kontrolni kod obrade je: ';
$p4=123;
echo $p4;
echo "<p>$s2</p>";
echo '<p>Ime prvog studenta je ';
echo $_POST['s1'];
echo '</p>';
echo '<p>Poeni prvog studenta su';
echo $HTTP_POST_VARS['p1'];
echo '<p>Obrađeno.</p>';
echo '<p>Smijer prvog studenta je';
echo $HTTP_POST_VARS['m1'];
echo '<p>Obrađeno.</p>';
U atributu
ACTION
biti
uitan
kada
korisnik
pritisne
dugme
kd:
<html>
<head><title>PHP obrada</title></head>
<body>
<h1>PHP obrada</h1>
<?php
echo $_POST['v1'];
echo ", dobro došli!!!";
echo '<br>';
echo 'Kontrolni kod obrade je: ';
$p4=123;
echo $p4;
echo "<p>$s2</p>";
echo '<p>Ime prvog studenta je ';
echo $_POST['s1'];
echo '</p>';
echo '<p>Poeni prvog studenta su';
echo $HTTP_POST_VARS['p1'];
echo '<p>Obrađeno.</p>';
?>
</body>
</html>
Ovdje je PHP kd naredbi bio ugraen u obinu HTML
datoteku. Izvorni kd stranice u browseru Weba je
sljedei:
<html>
<head>
<title>PHP obrada</title>
</head>
<body>
<h1>PHP obrada</h1>
<h2>Tabela</h2>
123<p>STIL
za
Promjenljivu</p><p>x</p>y<p>Obrađeno.</p>
</body>
</html>
PHP iskazi
PHP iskazi se nalaze izmeu poetnih i zavrnih oznaka
i odreuju ta prevodilac treba da radi. U ovom
Primjeru koristili smo samo jedan tip iskaza:
echo '<p>...</p>';
Rezultat naredbe echo je: da ona tampa (ili ispisuje)
tekst koji joj je proslijeen. Taka i zarez se koristi za
razdvajanje iskaza u PHP-u. Izostavljanje take i zareza
je tipina sintaksna greka.
<?php
echo '<p>DATUM OBRADE TABELE ';
echo date('H:i, jS F');
echo '</p>';
?>
odnosno
<html>
<head>
<title>PHP obrada</title>
</head>
<body>
<h1>PHP obrada</h1>
<h2>Tabela</h2>
<?php
echo $_POST['v1'];
echo ", dobro došli!!!";
echo '<br>';
echo 'Kontrolni kod obrade je: ';
$p4=123;
echo $p4;
echo "<p>$s2</p>";
echo '<p>Ime prvog studenta je ';
echo $_POST['s1'];
echo '</p>';
echo '<p>Poeni prvog studenta su';
echo $HTTP_POST_VARS['p1'];
echo '<p>Obrađeno.</p>';
</body>
</html>
rezultata.
Svako
slovo
znakovnom
nizu
ona
instalirana,
postoje
tri
naina
pristupanja
da
greke
zbog
kojih
kd
nee
biti
bezbijedan.
Srednji stil je prilino praktian, ali postoji tek od
verzije PHP-a 4.1.0, tako da na starijim instalacijama
nee raditi.
Dugi stil je najopirniji. Ali i najstariji, te zbog toga za
sada
radi
na
svakom
serveru,
bez
obzira
na
konfiguraciju.
PREDNOSTI I MANE SKRATKOG STILA
Kada se koristi kratki stil, imena promijenljivih u skriptu
ista su kao imena polja u HTML formi.
Nije potrebno deklarisati promenljive, one se skriptu
proslijeuju kao to se argumenti proslijeuju funkciji.
Ako upotrebite kratki stil, koristiete promenljivu kao
to je npr. $p1. Polje p1 u HTML formi pravi promenljivu
$p1 u PHP skriptu.
Upotreba
kratkog
stila
zahtijeva
da
parametar
iskljuen,
dok
je
starijim
verzijama
standardno ukljuen.
Prednosti i mane srednjeg stila
Srednji stil je itanje promijenljivih formulara iz jednog
od nizova $_POST, $_GET i $_REQUEST. Jedan od
nizova $_POST ili $_GET uvae podatke iz svih polja
formulara. Koji niz e biti upotrebljen zavisie od
metode koja se koristi za slanje formulara, POST ili GET.
Osim toga, svi podaci poslati preko metode POST ili
GET bie dostupni preko niza $_REQUEST.
Ako je obrazac poslan metodom POST, podaci iz polja p1
bie sauvani u elementu $_POST ['p1']. Ako je obrazac
poslat metodom GET, podaci e biti sauvani u elementu
$_GET ['p1']. U bilo kom od ta dva sluaja, podaci e biti
dostupni u elementu $_REQUEST ['p1'].
Ovi nizovi su neki od novih optih promijenljivih,
takozvanih superglobalnih vrijednosti.
Prednosti i mane dugog stila
Ako koristite dugi stil, podacima koje su unijeli korisnici
moi ete da pristupate
preko
elemenata
$HTTP_POST_VARS['p1']
ili
$HTTP_GET_VARS['p1'].
FORMULAR Primjer1.html
Ovaj primjer predstavlja modifikaciju PRIMJER.HTML
ubacivanjem nizova za imena polja.
<HTML>
<HEAD></HEAD>
<BODY>
<form
action="Primjer1.php"
method="post">
<p align="center">Formu popunjava:
<input
type="text"
name="v1"
size="40"
maxlength="60">
</P>
<p align="center">razno:
<input
type="text"
name="r1"
size="40"
maxlength="60">
</P>
<p> </P>
<table align="center">
<tr bgcolor=#cccccc align="center">
<td width=150>Student-ime i prezime</td>
<td width=15>POENI</td>
<td width=15>Oznaka smijera</td>
<td width=15>Trocifren broj indeksa</td>
<td width=15>email-adresa</td>
</tr>
<tr>
<td
align="center"><input
name="s[]"
type="text"
size="20"
maxlength="20"></td>
<td
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
name="e[]"
maxlength="20"></td>
type="text"
size="20"
</tr>
<tr>
<td
align="center"><input
name="s[]"
type="text"
size="20"
maxlength="20"></td>
<td
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
name="e[]"
type="text"
size="20"
maxlength="20"></td>
</tr>
<tr>
<td
align="center"><input
name="s[]"
type="text"
size="20"
maxlength="20"></td>
<td
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
type="text"
align="center"><input
type="text"
</HTML>
Primjer
reverznog
predefinisane funkcije
function poredi($a, $b)
{
sortiranja
koritenjem
if ($a == $b) {
return 0;
}
return ($a > $b) ? -1 : 1;
}