Sunteți pe pagina 1din 57

Informatica

Aplicata
Curs 10 : PHP-Mysql

Curs FAIMA
IMA an II
Martie 2015

Informatica Aplicata
Obiectivele cursului:

Sistem de management al bazelor de date - MySql

Informatica Aplicata

/*conectare la baza de date */


$conexiune=mysql_connect("localhost","root","");

Informatica Aplicata
Atribute
Posibilele alegeri pentru colatare sunt:
BINARY colatarea pentru campuri va fi binara, spre
exemplu utf8_bin;
UNSIGNED - campurile numerice vor fi zero sau pozitive;
UNSIGNED ZEROFILL - campurile numerice vor fi zero
sau pozitive si zerourile din fata vor fi asignate unui
numar;
ON UPDATE CURRENT_TIMESTAMP valoarea ptr un
camp de date are stampila de timp curenta ca valoare
prestabilita, si este actualizata in mod automat;

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Managementul bazei de date

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata
Realizarea formularelor de login

Nr. de ecrane necesar: 5

E1 formular de inregistrare
E2 pagina de verificare
E3 pagina de login
E4 pagina de verificare
E5 pagina propriu-zisa

Informatica Aplicata
Ecran 1
Pentru formularul de inregistrare sunt necesare 2 campuri
-tip text
-tip parola
Buton de submit

Buton de reset

Informatica Aplicata
In Ecran 2 se preiau cu POST cele 2 variabile din ecran 1
Se reiau pasii de creare baza de date / tabel

Informatica Aplicata

Informatica Aplicata
Dupa preluare cu POST a celor 2 variabile se realizeaa conexiune
la baza de date
/*conectare la baza de date */
$conexiune=mysql_connect("localhost","root","");
/*selectare baza de date */
mysql_select_db("ferrari", $conexiune);
/*ferrari se numeste baza de date*/
/* Introducere inregistrari in baza de date */
$sql="INSERT INTO `ferrari`.`user` (`nr.crt`,`nume`,`parola`)
VALUES
('Null', '$nume', '$parola');";

Informatica Aplicata

/*testare conexiune */
if (!mysql_query($sql,$conexiune))
{
die('Error: ' . mysql_error());
}
else echo "Inregistrarea datelor s-a realizat cu succes!";
mysql_close($conexiune);
?>
<br><br>
<a href="p1.php">
<input type="button" value="Click pentru a va loga in contul dvs">
</a>

Informatica Aplicata

In ecran 3, se face log-in-ul


Trebuie sa existe si aici formular pentru asa ceva

Informatica Aplicata

Pentru ecran 4
Se reiau cu POST variabilele din ecran 3 si se face citirea din
baza de date
/* Preluare cu POST variabile */
$nume=$_POST['name'];
$parola=$_POST['pass'];
/*conectare la baza de date */
$conexiune=mysql_connect("localhost","root","");

Informatica Aplicata

/*selectare baza de date */


mysql_select_db("ferrari", $conexiune);
/* Citire din baza de date */
$rezultat=mysql_query("SELECT * FROM user LIMIT 0,100" ,
$conexiune);
while ($row=mysql_fetch_array($rezultat))
{
$numebaza=$row['nume'];
$parolabaza=$row['parola'];
}

Informatica Aplicata
if ($nume==$numebaza and $parola==$parolabaza)
{header("location:p3.php");}
else {echo "nu aveti acces";}
?>
<br><br>
<a href="p1.php">
<input type="button" value="Click pentru a introduce id-ul si
parola corespunzatoare"> </a>

Informatica Aplicata
Scriere informatii in baza de date

Informatica Aplicata
Scriere informatii in baza de date (ecran 2)
/* Preluare cu POST variabile */
$nf=$_POST['nf'];
$dep=$_POST['dep'];
$nume=$_POST['nume'];
$prenume=$_POST['prenume'];
$np=$_POST['np'];
$vpp=$_POST['vpp'];
$v=$_POST['v'];
$varsta=$_POST['varsta'];
$ns=$_POST['ns'];
/*conectare la baza de date */
echo $np;
$conexiune=mysql_connect("localhost","root","");

Informatica Aplicata

/*selectare baza de date */


mysql_select_db("salariati", $conexiune);
/* Introducere inregistrari in baza de date */
$sql="INSERT INTO `salariati`.`lista` (`Nr.
Crt.`,`Nume_Firma`,`Departament`,
`Nume`,`Prenume`,`Nume_Post`,`Vechime_Pe_Post`,
`Vechime`,`Varsta`,`Nivel_Studii`) VALUES
('Null', '$nf', '$dep', '$nume','$prenume','$np',
'$vpp','$v','$varsta','$ns');";
/*testare conexiune */
if (!mysql_query($sql,$conexiune))
{
die('Error: ' . mysql_error());
}
else echo "";
mysql_close($conexiune);

Informatica Aplicata
Citire informatii in baza de date (ecran 3)
/* Preluare cu POST variabile */

/*conectare la baza de date */


$conexiune=mysql_connect("localhost","root","");
/*selectare baza de date */
mysql_select_db("salariati", $conexiune);

/* Citire din baza de date */


$rezultat=mysql_query("SELECT * FROM lista LIMIT 0,100" ,
$conexiune);

Informatica Aplicata

Informatica Aplicata
/* Citire din baza de date */
$rezultat=mysql_query("SELECT * FROM lista LIMIT 0,100" ,
$conexiune);
echo "<table> <tr><td> Nr.Crt.</td> <td> Nume Firma</td> <td>
Departament</td> <td> Nume</td>
<td> Prenume</td> <td> Nume Post</td>
<td>Vechime Pe Post </td> <td>Vechime</td><td>Varsta</td><td>
Nivel Studii</td>";

Informatica Aplicata

while ($row=mysql_fetch_array($rezultat))
{
echo "<tr>";
echo "<td>" .$row['Nr. Crt.']." </td>";
echo" <td> " .$row['Nume_Firma']." </td>";
echo" <td> " .$row['Departament']."</td>";
echo" <td> " .$row['Nume']." </td> ";
echo" <td> " .$row['Prenume']." </td> ";
echo" <td> " .$row['Nume_Post']." </td> ";
echo" <td> " .$row['Vechime_Pe_Post']." </td> ";
echo" <td> " .$row['Vechime']." </td> ";
echo" <td> " .$row['Varsta']." </td> ";
echo" <td> " .$row['Nivel_Studii']." </td> ";
echo "</tr>"; }
echo "</table>";
mysql_close($conexiune);
?>

Informatica Aplicata
Ordonare informatii (ecran 4, 5)

Informatica Aplicata

/* Preluare cu POST variabile */


$cod1=$_POST['cod1'];
$cod2=$_POST['cod2'];
$ordine1=$_POST['ordine1'];
$ordine2=$_POST['ordine2'];
/*conectare la baza de date */
$conexiune=mysql_connect("localhost","root","");
/*selectare baza de date */
mysql_select_db("salariati", $conexiune);
/* Citire din baza de date */
$rezultat=mysql_query("SELECT * FROM lista ORDER BY
$cod1 $ordine1, $cod2 $ordine2 LIMIT 0,100" , $conexiune);

Informatica Aplicata

echo "<table> <tr><td> Nr.Crt.</td> <td> Nume Firma</td> <td>


Departament</td> <td> Nume</td>
<td> Prenume</td> <td> Nume Post</td>
<td>Vechime Pe Post </td> <td>Vechime</td><td>Varsta</td><td>
Nivel Studii</td>";
while ($row=mysql_fetch_array($rezultat))
{
echo "<tr>";
echo "<td>" .$row['Nr. Crt.']." </td>";
echo" <td> " .$row['Nume_Firma']." </td>";
echo" <td> " .$row['Departament']."</td>";
echo" <td> " .$row['Nume']." </td> ";
echo" <td> " .$row['Prenume']." </td> ";

Informatica Aplicata
echo" <td> " .$row['Nume_Post']." </td> ";
echo" <td> " .$row['Vechime_Pe_Post']." </td> ";
echo" <td> " .$row['Vechime']." </td> ";
echo" <td> " .$row['Varsta']." </td> ";
echo" <td> " .$row['Nivel_Studii']." </td> ";
echo "</tr>"; }
echo "</table>";
mysql_close($conexiune);

?>

Informatica Aplicata

Informatica Aplicata
Cautare informatii din baza de date (ecrane 6,7)

Informatica Aplicata
/* Preluare cu POST variabile */
$nume=$_POST['nume'];
$prenume=$_POST['prenume'];
/*conectare la baza de date */
$conexiune=mysql_connect("localhost","root","");
/*selectare baza de date */
mysql_select_db("salariati", $conexiune);
/* Citire din baza de date */
$rezultat=mysql_query("SELECT * FROM lista WHERE
Nume='$nume' and
Prenume='$prenume'", $conexiune);

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata

Informatica Aplicata