CATEGORII DOCUMENTE |
Instructiunea if
Ca si in alte limbaje, instructiunea if are doua forme:
if (conditie)
respectiv
if (conditie)
else
Conditia poate fi o expresie logica, scrisa folosind operatorii relationali uzuali: < <= > >= == != (sau <>, diferit), respectiv && (dar si and, operatorul si), || (dar si or, operatorul sau), ! (negatie). Cele doua variante de operatori logici 'si' respectiv 'sau' difera prin ordinea de evaluare a operanzilor.
Ca si in alte limbaje, conditie poate fi o expresie aritmetica, o valoare 0 a acesteia fiind interpretata ca fals (FALSE) iar o valoare diferita de 0 ca adevarat (TRUE).
Instructiunea if elseif
Ca si in C, si in PHP pot fi scrise constructii de forma:
if (conditie_1)
elseif (conditie_2)
elseif (conditie_3)
else
Ultimul else poate lipsi.
Instructiunea switch case
Pentru cazul in care intr-un program ramificarea depinde de valoarea unei variabile, structura switch case este mai potrivita. Ea are sintaxa:
switch ($var)
Exemplu:
switch ($submit)
Portiunea din script din exemplu realizeaza o actiune comandata prin apasarea unui buton de tip submit. In functie de butonul apasat, valoarea transmisa scriptului difera. In cazul 'update' instructiunea 'break' lipseste, deci dupa actualizare se va executa codul specific imprimarii ($submit = 'display').
Instructiunea while
Instructiunea while indica repetarea unei actiuni atata vreme cat o conditie este adevarata. Sintaxa instructiunii este:
while (conditie)
Exemple:
$query = 'select nume, prenume from utilizatori';
$rezultat = mysql_query($query) or die(mysql_error());
while ($row = mysqli_fetch_array($rezultat))
Aceasta structura de cod este specifica activitatii de recuperare de informatii dintr-o baza de date.
$nume = array('Ion', 'Maria', 'George', 'Sandu');
while (list( , $value) = each($nume))
Instructiunea do while
Instructiunea do while indica repetarea unei actiuni atata vreme cat o conditie este adevarata. Spre deosebire de while, conditia este testata dupa executarea cel putin o data a actiunii. Sintaxa instructiunii este:
do
while (conditie);
Instructiunea for
Instructiunea for are sintaxa urmatoare:
for(exp1; exp2; exp3)
Exemplu:
<html>
<?php
$factorial = 1;
for ($i=1; $i<7; $i++)
?>
</html>
Instructiunea foreach
Instructiunea foreach se foloseste exclusiv pentru prelucrarea elementelor sirurilor. Este echivalenta constructiei list () = each(). Sintaxa instructiunii este:
foreach ($nume_sir as $variabila)
Exemplu:
$nume = array('Ion', 'Maria', 'George');
foreach ($nume as $membru)
Instructiunile break si continue
Ca si in C, break intrerupe un ciclu sau un switch. Instructiunea care urmeaza dupa break este cea care urmeaza dupa instructiunea switch sau dupa ciclul care contine break.
Instructiunea continue este folosita tot in interiorul ciclurilor si comanda reluarea imediata a ciclului intrerupand secventa de cod cuprinsa intre locul in care continue este inserat si sfarsitul ciclului.
Exemplu:
<html>
<?php
$director = opendir ('c:/apache/htdocs/postuniv/');
echo 'fisierele din directorul $director sunt:<br>n';
while ($fisier = readdir ($director))
echo '$fisier <br> n';
}
closedir ($director);
?>
</html>
Functiile opendir() respectiv closedir() deschid respectiv inchid un director iar functia readdir() citeste o intrare din acest director. Tipul intrarii (fisier sau director) este testat prin apelul functiei is_dir() si in caz pozitiv, intrarea este ignorata (se executa instructiunea continue).
Aplicatie (9)
a. Porniti aplicatia xampp. c:xamppxampp_start.exe
b. Creati directorul c:xampphtdocsperla in care se vor salva toate fisierele realizate in continuare. Creati un fisier denumit salut.php care afiseaza un mesaj. Toate scripturile se incarca in browser folosind adresa (URL) a acestora: https://localhost/perla/salut.php.
<html>
<head>
<title>Exemplu</title>
</head>
<body>
<?php
echo 'Salut, sunt un script PHP !';
?>
</body>
</html>
c. Integrati urmatorul script intr-un document denumit hotel.php. Analizati sintaxa.
$cladire = 'hotel';
echo '<p>Am vizitat statiunea Perla</p>';
echo '<p>Am locuit intr-un $cladire superb</p>';
echo '<p>Toti turistii sunt multumiti de serviciile ' . $cladire . 'iere</p>';
d. Creati un script denumit cazare.php care utilizeaza un tablou asociativ dupa modelul:
$cazare = array( 'Plaza' => 'hotel' , 'Rustic' => 'motel' , 'Ana' => 'vila' );
echo '<p>Sunt cazat la $cazare[Ana]</p>n';
echo '<p>Mananc la $cazare[Rustic]</p>n';
echo '<p>Fac baie la piscina de langa $cazare[Plaza]</p>';
Observatie: Analizati care este codul generat in browser de acest script (Wiew/Source) in forma prezentata si daca se elimina cele doua "n"
e. Descarcati de pe pagina web a cursului, fisierul rezervari.html care contine formularul prezentat in imagine si scriptul rezervari.php care afiseaza valorile transmise de formularul HTML scriptului PHP in momentul apasarii butonului de tip submit.
Fig. 5.5 Modelul fisierului rezervari.html
Observatie: Analizati cu mare atentie mecanismul de transmitere a valorilor variabilelor de la formularul HTML la scriptul PHP. Identificati marcajele de inserare in formular a tuturor campurilor si observati ca denumirile variabilelor utilizate in script, sunt identice cu denumirile campurilor formularului:
rezervari.html
<select
name='cazare'>
<option selected
value='initial'>(Alege cazarea)</option>
<option
value='plaza'>Plaza</option>
</select>
<input type='text' name='nume' size='30'>
<input type='text' name='prenume' size='30'>
<input type='text' name='email' size='30'>
<input type='text' name='telefon' size='30'>
<input type='radio' name='tip_cam' checked value='0'>
<input type='radio' name='tip_cam' value='1'>
<input type='radio' name='tip_cam' value='2'>
<input type='text' name='data' size='10' value='0000-00-00'>
<input type='text' name='nrzile' size='2'>
<select name='confirm'>
<option selected value='initial'>(Alege)</option>
<option value='email'>E-mail</option>
<option value='telefon'>Telefon</option>
</select>
<input type='checkbox' name='plata'>
<input type='password' size=4 name='pin'>
rezervari.php
echo 'Denumirea spatiului de cazare: $cazare <br>';
echo 'Numele clientului: $nume <br>';
echo 'Preumele clientului: $prenume <br>';
echo 'E-mail-ul clientului: $email
<br>';
echo 'Telefonul clientului: $telefon <br>';
echo 'Tipul camerei rezervate:
$tip_cam : ';
echo 'Data sosorii: $data <br>';
echo 'Numarul de zile: $nrzile <br>';
echo 'Tipul confirmarii: $confirm <br>';
echo 'Plata anticipata: $plata : ';
echo 'Codul cardului: $pin <br>';
f. Modificati aspectul fisierului rezervari.html prin scrierea fisierului stilform.css care sa controleze culoarea in care sunt afisate anumite componente si tipul fontului.
stilform.css
h2
td
hr
rezervari.html
Adaugati in sectiunea <head> marcajul:
<link rel='stylesheet' type='text/css' href='stilform.css'>
g. Modificati fisierul rezervari.php astfel incat acest script sa afiseze cu culoarea rosie, toate valorile variabelor transmise din formular.
<font color=red>$nume</font>
h. Realizati un script care afiseaza numarul accesarilor unei pagini web. Pentru aceasta scrieti fisierul contor.php care sa realizeze incrementarea unui contor citit dintr-un fisier denumit contor.dat.
contor.php
<html><head><title>Un contor util</title></head>
<body>
Din 1.05.2003, aceasta pagina a fost citita de
<?php
$contor = 1;
// Deschid fisierul care contine contorul
if($fp = fopen ('contor.dat','r'))
// Rescriu in fisier valoarea contorului
// Deschid fisierul care contine contorul
$fp = fopen ('contor.dat', 'w');
// Scriu noua valoare a contorului
$sir = sprintf('%dn', $contor);
fputs ($fp, $sir);
// Inchid fisierul
fclose($fp);
echo '$contor vizitatori.';
?>
</body></html>
Observatii:
1. In vederea creerii fisierului contor.dat, la prima incarcare a fisierului contor.php, trebuie sa se creeze fisierul contor.dat, care inca nu exista, deci nu poate fi citit. In consecinta functia fopen trebuie apelata cu atributul 'w+':
$fp = fopen
('contor.dat','w+')
Dupa ce fisierul contor.dat a fost creat, se poate modifica functia fopen cu atributul 'r', care va deschide fisierul in citire (ca in exemplul prezentat).
i. Afisati cu ajutorul unui script, denumit azi.php, data curenta si ora:
<html>
<head><title>Afisarea datei</title></head>
<body>
<?php
$azi = date('j F, Y, g:i a');
echo '<p>$azi</p>'; echo 'sau'; echo '<p>Data: ';
$azi = date('m.d.y');
echo '$azi</p>'; echo '<p>Ora: '; $azi = date('H:i:s'); echo '$azi</p>';
?>
</body>
</html>
Munca independenta
Copiati de pe discheta Dvs., sau din directorul c:perla fisierele index.html info.gif uk.gif si oval1.gif in directorul c:xampphtdocsperla si efectuati modificarile necesare in vederea contorizarii numarului de vizitatori ai sitului. In acest scop folositi fisierul contor.php creat anterior, pe care il veti integra in fisierul index.html
Fig. 5.6 Modelul fisierului index.html
Observatie: Dupa integrarea fisierului contor.php in fisierul index.html pentru a fi afisat numarul vizitatorilor sitului, deci pentru ca scriptul sa functioneze, trebuie schimbat numele fisierului in index.php si acesta trebuie incarcat in browser utilizand adresa URL.
Politica de confidentialitate | Termeni si conditii de utilizare |
Vizualizari: 1301
Importanta:
Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved