TUTORIALE  TIC

COLEGIUL  ECONOMIC  "DPM"  ALBA   IULIA

Profesor  Simona  Dogaru ,    ISBN    978-973-0-31260-7 Alba Iulia, 2020

ISBN   978-973-0-31261-4 ;   Alba Iulia, 2020  
 

 

Clasa a IX-a Structura calculatorului Windows
Word Formatare Tabele, obiecte si formule matematice Cuprins,note subsol, unelte de desenare
HTML Tema 9
Clasa a X-a
Excel Formatari si grafice Formule si calcule matematice. Functii Baze de date Scenarii
Power Point Tema 10
Clasa a XI-a
Access Tabele Relatii intre tabele Interogari Rapoarte, formulare si etichete
Proiecte Tema 11
MATEMATICA Analiza matematica XI Reprezentarea functiilor Calcul financiar Recapitulare clasa 9 Ecuatii-Inecuatii 10 Trigonometrie 10
COMUNICARE Administrarea corespondentei Comunicarea Comunicare
Clasa a XII-a HTML PhP Formulare PHP Instructiuni conditionale MySQL Tema 12

 

Scrierea unui script PHP

 

Pentru scrierea unui script PHP se poate folosi un editor de texte obişnuit ca de exemplu Notepad sau Wordpad. Fişierul astfel creat se va salva cu extensia PHP.
Dacă se lucrează sub Unix sau Linux se poate folosi programul pico sau emacs.
Script-urile PHP sunt fişiere text ce au aceeaşi structură ca orice document HTML. Un script PHP poate conţine atât etichete HTML cât şi secvenţe de cod PHP, incluse într-un marcaj special.
Etichetele ce delimitează secvenţa de cod PHP are următoarea formă:

<?php

      echo  ˝O secventa de cod PHP˝;

?>

 

 

 

 

Observaţie :  Instrucţiunile PHP sunt expresii care se termină obligatoriu prin caracterul punct şi virgulă   ;  .
In numele fişierului PHP se vor folosi numai caractere, cifre şi liniuţe. Folosirea altor caractere este interzisă.

 

Interpretarea datelor de ieşire

 Scripturile PHP pot conţine următoarele operaţii:
-          obţinerea datelor de la utilizator
-          prelucrarea acestor date
-          afişarea rezultatelor obţinute în urma prelucrării
Ultima operaţie va apărea în orice script şi se realizează cel mai uşor cu ajutorul instrucţiunii echo.
 
De exemplu :
                        echo „O secventa de cod PHP”;
După cum se observă orice text care va fi afişat este delimitat prin ghilimele care se încheie cu ;
În cadrul acestei instrucţiuni PHP se pot introduce şi etichete HTM ( tag-uri).
 
                        echo „ <B> <H2> Imi place informatica…</H2></B>”;
 

          Comentariile dintr-un script

În cadrul unui script se pot introduce comentarii despre utilitatea programului sau despre ce am calculat la un anume pas din program. Aceste comentarii sunt vizibile numai programatorului, utilizatorul scriptului vizualizând numai datele de ieşire.
Un comentariu scris pe o linie va începe cu //( 2 slash-uri) iar cel care se întinde pe mai multe rânduri începe cu  /* şi se termină cu */ .
 
Exemplu:
1)

<?php

       //comentariu pe o linie

       echo” Invat sa scriu scripturi”;

?>

2)

<?php

         /* Cu acest tip de comentariu

               pot sa fac invizibile

                mai multe linii de cod */

          echo „ Incepe sa-mi placa”;

?>

 
   
          Rularea (încărcarea) unui script
 
După ce aţi instalat Apache poziţionaţi-vă până în folderul Program Files→ Xampp→Htdocs. Aici ar fi indicat să vă creaţi un folder de lucru, de exemplu PROBE. Toate scripturile PHP se vor salva în acest folder. Pentru a le putea rula vom proceda astfel:
-          se lansează browserul
-          în bara de adrese vom scrie calea până la fişier :
http://localhost/probe/fisier.php
dacă serverul Windows, Unix sau Linux nu se află în reţeaua locală atunci puteţi folosi un program FTP pentru a încărca scriptul şi veţi cere de la administratorul de sistem mai multe informaţii:
-          nume gazdă server
-          ID-ul şi parola d-voastră pentru a lucra prin protocolul FTP
-          Folderul în care puteţi salva scripturile PHP
-          URL ce trebuie folosit pentru a rula scripturile
 
Exemplu de mod de încărcare a fişierului d-voastră cu ajutorul unui client FTP:
-          deschideţi MS-DOS
-          comanda CD pentru a ajunge în folderul ce conţine scriptul
-          comanda ftp gazdă (= numele server PHP)
-          introduceţi-vă ID-ul şi parola furnizată de administratorul de sistem
-          cu comanda CD vă deplasaţi în folderul în care trebuie încărcat scriptul
-          comanda put script (= numele fişierului PHP)
-          comanda quit
 
după ce a fost încărcat scriptul se lansează browserul web apoi se deschide adresa URL asociată scriptului (cea dată de administratorul de sistem)
 
Uneori , la lansarea fişierului PHP pot apărea erori de execuţie în locul datelor de ieşire aşteptate.
Acestea sunt de obicei erori din cadrul programului, care sunt semnalate prin numărul liniei unde ar fi posibila greşeală. Nu vă rămâne decât să deschideţi fişierul cu editorul de texte şi să corectaţi.
Mai pot apărea erori dacă nu aţi scris corect adresa URL. La fel, verificaţi şi corectaţi.
 

 
Tipuri de date
 
În cadrul programelor se utilizează date care reprezintă informaţii. Aceste date pot aparţine unor tipuri simple sau unor tipuri structurate.
 
 
            Tipuri simple
 
a)      Tipul întreg (int) poate reţine numere întregi din domeniul
-2.147.483.648…..+2.147.483.647 . Ele sunt limitate la acest interval deoarece sunt stocate ca valori pe 32 de biţi.
 
Ex:  23, +872, -6598, 0
 
b)      Tipul real (double) conţine valori numerice reprezentate în virgulă mobilă cu valoarea maximă 1,8*10308 şi având o precizie de maxim 14 cifre zecimale. Ele ating această valoare maximă fiindcă sunt stocate, în majoritatea cazurilor, în formatul IEEE-64 pe 64 de biţi.
 
Atenţie:
-          pentru scrierea numerelor duble se va folosi punctul zecimal pentru delimitarea părţii întregi de partea zecimală.
-          Putem folosi scrierea 1.3e2 care înseamnă 1.3*102 sau -2.5e-3 = -2.5*10-3
 
Ex: 12.345 ,  -5.00 ,  0.03 ,  .056,  -.456
 
c)      Tipul logic (boolean) reprezintă mulţimea cu două elemente true şi false. Orice expresie care are valoarea nenulă se consideră adevărată şi orice expresie cu valoarea zero sau NULL se consideră falsă.
 
d)     Şiruri = şirul de caractere are ca elemente toate succesiunile de zero sau mai multe caractere. Pentru delimitarea unui şir de caractere se pot utiliza ghilimelele sau apostrofurile.
Şirul vid :  ˝˝, ΄΄
Şiruri formate dintr-un singur caracter : ˝A˝ , ˝2˝
Şiruri oarecare: ˝Merg la scoala˝ , ˝563˝, ΄Parola este΄
 
 
 
 
 
PHP facilitează folosirea următoarelor caractere speciale numite secvenţe escape:
\n = salt la linie nouă
\r = retur de car
\t = tabulare pe orizontală
\\ = backslash
\$ = simbol dolar
\” = ghilimele duble
 
 
Definirea şi utilizarea variabilelor în PHP
 
O variabilă reprezintă numele dat unei valori , valoare ce poate fi modificată pe parcursul execuţiei programului PHP. Identificatorii asociaţi variabilelor PHP sunt şiruri de caractere construite conform regulilor:
-          primul caracter este $
-          al doilea caracter este obligatoriu literă sau underscore _
-          urmează un număr oarecare de caractere literă sau cifră
Ex:   Corect      : $a, $produs, $suma_1
         Incorect   : $2x, suma, $ produs, $suma 2
 
 
 
 
 
Observaţie :   Limbajul PHP este case-sensitive  adică majusculele şi minusculele sunt tratate diferit. Astfel, identificatorii $Suma, $SUMA, $suma sunt variabile diferite.
În PHP, o variabilă se consideră definită în momentul atribuirii, tipul asociat variabilei fiind tipul expresiei din partea a atribuirii.
 
<?php
$a = 4 + 2;
$b = 9 - 3.2;
echo $a ,” ”, $b;
$b = ”informatica” ;
echo ”  ” , $b ;
?>
 
Explicaţii :  Variabila $a va avea tipul întreg iar $b va fi de tip real. După afişarea valorilor celor 2  variabile , variabilei $b i se atribuie constanta şir de caractere „informatica”, astfel că tipul variabilei $b se schimbă.
 
Deci o variabilă poate avea unul din tipurile de date enunţate mai sus. Tipul unei variabile se poate modifica dacă atribuim o valoare de tip diferit faţă de cea curentă.
 

Tipuri structurate
 
a)      Tipul resursă . Variabilele de acest tip sunt folosite pentru realizarea conexiunilor dintre script-urile PHP şi resursele externe, cum ar fi bazele de date sau fişierele.
 
b)     Tipul tablou
O variabilă tablou conţine mai multe valori care se numesc elementele tabloului. Fiecărui element îi corespunde o cheie care permite accesul la acel element. Pentru a crea un tablou vom realiza o atribuire ca în exemplu:
$judet[1]="Alba";
 
adică am creat variabila tablou cu numele judet care conţine un element Alba ce are cheia 1. Dacă mai introduc alte elemente voi atribui  alte chei:
$judet[2]="Cluj";
$judet[3]="Iasi";
 
Deci avem 3 elemente în variabila tablou. Dacă vrem să atribuim valoarea Iasi unei alte variabile vom proceda astfel:
$judet_Moldova=$judet[3];
 
Cheile folosite nu este obligatoriu să fie numere consecutive şi nu trebuie să fie nici măcar numere. Alt exemplu cu ierarhia dintr-o firmă:
$functie["Ion"]="paznic";
$functie["Ana"]="contabil";
 
Deci Ion este paznic iar Ana este contabilă.
 
Elementele unui tablou cu chei non-numerice se apelează sau prelucrează la fel cu cele care au chei numerice.
$promovat=$functie["Ion"];

Afişarea datelor
 
 
            Se realizează prin intermediul lui echo:
                        echo  expresie_1, expresie_2, …, expresie_n;
 
unde : expresie_1, expresie_2, …, expresie_n sunt de tip şir de caractere.
 
Observaţie: 1. Pentru concatenarea a 2 şiruri de caractere se utilizează simbolul punct .
 
<?php
            echo  „Invatam limbajul PHP. <BR>”;
            echo  „ Invatam” . ”limbajul PHP <BR>”;
?>
 
 
 
 
 
 
 
2.      Şirurile de caractere afişate cu echo pot conţine orice etichetă HTML, ele apărând în fereastra navigatorului în conformitate cu etichetele utilizate.
 
În următorul exemplu urmărim modalitatea de afişare a valorilor variabilelor.
<?php
$a = 10;
$b = 3.4;
$suma = $a+$b;
echo „Suma este : $a+$b = $suma”;
?>
 
 
 
 
 
 
 
 
2
 
Se va afişa,  Suma este: 10+3.4=13.4
deci are loc înlocuirea variabilelor cu valoarea acestora.
 
 
          Operatori şi expresii
 
Aritmetici
            +,  -,  *,  /,  %, ++, -- (adunarea, scăderea, înmulţirea, împărţirea, restul împărţirii întregi, incrementare, decrementare)
 
Relaţionali:
            <, >, <=, >=, != sau <> (diferit), = = (egal), = = =(identic), != = (neidentic)
 
Operatorul = = =  returnează true dacă 2 expresii sunt identice ca valoare şi de acelaşi tip.
 
Logici:
and,  && 
şi logic
or,    ||           
sau logic
not,    !          
negaţia logică
  
<?php
$x = 1;
$y = 3;
$z = 1;
$t = 3.00;
if ($x= = $z  && $t>0)   echo „DA”;
else   echo „NU” ;
if ($x< $y  || $y>$z)   echo „DA”;
else   echo „NU” ;
if (!$x)   echo „DA”;
else   echo „NU” ;
?>
 
Casetă text: Analizaţi singuri ce va fi afişat!
 
Operator pe şir de caractere este simbolul punct  . (concatenare) :
 
?php
       $s1 = ”PHP este un”;
       $s2 = ”limbaj”;
       echo  $s1. " ". $s2;
?>
 
 
 
 
 
 
Va avea ca rezultat şirul: „ PHP este un limbaj” .

Operatorul de incrementare:
 ++$a are ca efect adăugarea lui 1 la valoarea variabilei a
--$b va scădea 1 din valoarea variabilei b
 
$x=++$a;
 
adică adăugăm 1 la valoarea lui a apoi atribuim noua valoare lui x .
 
$nume="Ionescu";  $prenume="Ana";
$nume_complet=$nume." ".$prenume;
 
Între cele 2 variabile am introdus un spaţiu iar alipirea lor o realizez cu ajutorul operatorului punct rezultând variabila $nume_complet cu valoarea „ Ionescu Ana” .
Operaţiile matematice dintr-o expresie respectă aceleaşi reguli dinmatematică.
$a=1+2*4;    =>a=9
$a=(1+2)*4;   =>a=12
 
 
Funcţii matematice
 
abs($x) =>modul lui x
ceil($x) => valoarea lui x rotunjită la întregul imediat superior
floor($x) => valoarea lui x rotunjită la întregul imediat inferior
max($x,$y,…) => maximul dintre valorile aflate ca argumente (x,y,…)
min($x,$y,…) => minimul dintre valorile aflate ca argumente(x,y,…)
pow($a,$n) => an 
sqrt($a) =>

Şiruri de caractere
 
 
Un şir de caractere poate fi privit ca fiind un tablou unidimensional cu elemente de tip caracter. Aceasta înseamnă că putem parcurge şirul carcater cu caracter, în vederea prelucrării acestora şi, de asemenea, putem modifica orice caracter din şir printr-o operaţie de atribuire. De exemplu parcurgerea şirului $sir se poate face astfel:
 
            for ($j=0;$j<strlen($sir);$j ++)
                     echo $sir[$j]. `<BR>` ;
 
                      Aflarea lungimii unui şir
 
 
            Determinarea lungimii unui şir de caractere se realizează prin apelul funcţiei strlen(), care returnează numărul de caractere din şirul precizat ca parametru.
 
<?php
            $sir="azi merg la scoala";
            $lung=strlen($sir);
            echo "Sirul <I><B>$sir</B></I> are lungimea ".$lung;
?>
1
 
 
            Eliminarea spaţiilor dintr-un şir de caractere
 
 
Eliminarea caracterelor spaţiu – white spaces- de la extremităţile unui şir de caractere, este o facilitate importantă atunci când datele sunt preluate din formulare sau baze de date, acolo putând să apară spaţii nedorite care ar genera erori în aplicaţie. Caractere white spaces sunt considerate atât caracterul spaţiu cât şi TAB, CR, tab vertical, etc.
 
Funcţie
Explicaţie
String ltrim (string sir)
Elimină spaţiile de la începutul şirului sir
String rtrim (string sir)
Elimină spaţiile de la sfârşitul şirului sir
String trim (string sir)
Eimină spaţiile din ambele extremităţi ale şirului sir
 
<?php
            $sir1="        azi merg la scoala\t";
            $sir2="\t azi merg la scoala";
           
            if($sir1==$sir2)
               echo "sirurile sunt identice <BR>";
            else
               echo " sirurile sunt diferite <BR>";
            if (trim($sir1)==trim($sir2))
                echo "Identice <BR>";
            else
                echo "Difera <BR>";
?>
 
2
      

            Conversia şirurilor la majuscule sau minuscule
 
Funcţie
Explicaţie
String strtoupper (string sir)
Transformă toate caracterele şirului sir la majuscule
String strtolower (string sir)
Transformă toate caracterele şirului sir la minuscule
String ucfirst (string sir)
Transformă primul caracter din şirul sir la majusculă
String ucwords (string sir)
Transformă primul caracter al fiecărui cuvânt din şirul sir la majusculă

?php

Afişează:

 

MAINE MERGEM LA MECI

maine mergem la meci

 
            $sir1=" Maine mergem la MEci";
           
             echo strtoupper($sir)."<BR>";
           
             echo strtolower($sir).'<BR>';
 
?>
 
 
            Compararea şirurilor
 
 
            Compararea se bazează pe ordinea lexicografică şi rezultatul returnat poate fi o valoare negativă, pozitivă sau egală cu zero în funcţie de rezultatul comparaţiei.
 
Funcţie
Explicaţie
String strcmp (string s1, string s2)
Compară şirurile s1 şi s2 returnând:
-          0, dacă s1= s2
      -    <0 , dacă s1<s2
      -    >0, dacă s1>s2
String strncmp (string s1, string s2, int n)
Compară primele n caractere din şirurile s1 şi s2 returnând:
-          0, dacă s1= s2
      -    <0 , dacă s1<s2
      -    >0, dacă s1>s2
String strcasecmp (string s1, string s2)
La fel  ca la strcmp, dar compararea are loc fără a se face diferenţa între majuscule şi minuscule
String strncasecmp (string s1, string s2, int n)
La fel  ca la strncmp, dar compararea are loc fără a se face diferenţa între majuscule şi minuscule
 
Secvenţa:
<?php
            $s1='calculator';
            $s2='calculate';

Afişează:

 

Siruri diferite

Siruri identice

 
            if (strcmp($s1,$s2)==0)
                        echo "Siruri identice<BR>";
            else
                        echo "Siruri diferite<BR>";
            if (strncmp($s1,$s2,6)==0)
                        echo "Siruri identice<BR>";
            else
                        echo "Siruri diferite"<BR>";
?>
 
        

Funcţii pentru criptarea datelor
 
 
            Majoritatea aplicaţiilor web manipulează date confidenţiale, cum ar fi datele personale. Memorarea datelor confidenţiale în fişiere sau baze de date se realizează numai după criptarea acestora, ca măsură de precauţie în cazul accesului neautorizat la serverul gazdă al aplicaţiei.
            Limbajul PHP furnizează mai multe funcţii de criptare a şirurilor de caractere : md5(), crypt(), sha1(), crc32().
 
<?php
             $parola="martinel";
            echo sha1($parola).'<BR>';
?>
 
Afişează:
 
3
 
 
Exemplu:
 
Într-un formular vom crea mai multe casete text cu numele, prenumele, parola utilizatorului. Pentru prima casetă text vom testa dacă nu e caseta goală, sau dacă a introdus numere în loc de caractere şi dacă are lungimea mai mică decât 5 atunci vom considera că utilizatorul nu a completat corect în caseta nume.
 
Pas 1.  Salvăm fişierul p9.html în folderul xampp/ htdocs/ probe care va conţine formularul de mai jos.
 
<html>
<head>
<title>New Page 1</title></head>
<body>
<form method="POST" action="p9.php">
     Nume: <input type="text" name="nume" size="60" maxlength="15"><br><br>
     Prenume: <input type="text" name="prenume" size="20"><br><br>
     Varsta: sub 16 <input type="radio" value="sub16" name="varsta">
    | peste 16 <input type="radio" name="varsta" value="peste16"><br><br>
     Introduceti parola: <input type="password" name="parola" size="20"><br><br>
     <input type="submit" value="Trimite" name="Trimite">&nbsp;&nbsp;
     <input type="reset" value="Reseteaza" name="Reseteaza" >
</form>
 </body></html>
 
 
Pas 2.  În acelaşi folder vom salva fişierul p9.php cu următorul conţinut:
 
<?php
            if (($_POST['nume'] = = "") || (is_numeric($_POST['nume'])) ||
                   (strlen($_POST['nume']) < 5))
            {
                        echo ' Campul nume nu a fost completat corect. <br>
                                 <a href = "formular_1.htm">Apasa aici</a> pentru a te intoarce la        formular.' ;
            }
            else
                        {
                        echo 'Nume: '.$_POST['nume'].' <br>
                                 Prenume: '.$_POST['prenume'].' <br>
                                 Varsta: '.$_POST['varsta'].' <br>
                                 Parola: '.$_POST['parola'].' <br>';
                        }
?>
 
Pas 3. Deschideţi fişierul HTML cu ajutorul unui browser şi completaţi URL-ul
 (http://localhost/probe/p9.html). Completaţi câmpurile cu valorile cerute şi apăsaţi butonul Trimite.
 
4
 
 
Pas 4. După ce scriptul de prelucrare p9.php este executat, acesta va afişa un mesaj ca mai jos (dreapta).
 
 
5
 
 
Verificarea datelor transmise prin formular
 
            Verificarea conţinutului trimis prin formular se face relativ foarte uşor.
 
<?php
            if(($_POST['nume'] = = "") || (is_numeric($_POST['nume'])) ||
                   (strlen($_POST['nume']) < 5))
            {
                        echo ' Campul nume nu a fost completat corect. <br>
                                 <a href = "p9.html">Apasa aici</a> pentru a reveni la formular.' ;
            }
            else
                        {
                        echo 'Nume: '.$_POST['nume'].' <br>
                                 Prenume: '.$_POST['prenume'].' <br>
                                 Varsta: '.$_POST['varsta'].' <br>
                                 Parola: '.$_POST['parola'].' <br>';
                        }
?>
            Condiţia if spune cam aşa: dacă variabila nume este goală, ori dacă este numerică, ori dacă numărul de caractere este mai mic de 5, rezultă bucla de cod din instrucţiunea if. Dacă toate acestea sunt îndeplinite, atunci se execută bucla de cod din instrucţiunea else.
            Modificaţi în pagina pr9.php introducând scriptul de mai sus pentru a testa aceste reguli şi pentru câmpul  Prenume şi Parola.
 
If ( ($_POST['nume'] = = "") || (is_numeric($_POST['nume'])) || (strlen($_POST['nume']) < 5) || ($_POST['prenume'] = = "") || ($_POST['parola'] = = "")) etc etc.
 
(is_numeric($_POST['nume'])) – această parte ne spune dacă valoarea câmpului nume este numerică.
            Putem folosi şi varianta în care dorim să ştim dacă nu este numerică, şi anume: ( ! is_numeric($_POST['nume'])) observaţi că am adăugat un ! pentru a nega.
           
 
Aplicaţii:
 
1. Concepeţi un formular care va conţinea câmpurile: Nume utilizator, Adresa, Telefon, Parola şi butoanele Trimite şi Sterge.
Realizaţi următoarele discuţii:
a) Să introducă în câmpul nume numai caractere iar lungimea numelui sa fie minim 10.
b) În câmpul Telefon sa fie introduse numai numere
c) Parola să fie formată numai din numere şi are lungimea de minim 7 cifre.