|
|||||
|
|
|
1.Obsługa plików w PHP:
· Napisać skrypt umożliwiający logowanie i zakładanie nowych kont.
Index_logowanie.php
<?php
echo'
<link rel="Stylesheet" type="text/css" href="style.css" />
<b>Logowanie</b>
<form method="post" action="zaloguj.php">
<table width="200" border="0" cellspacing="0" cellpadding="0" >
<tr>
<td>Login</td>
<td>
<input type="text" name="login" width="100" height="10"/>
</td>
</tr>
<tr>
</tr>
<tr>
<td>Haslo</td>
<td><input type="text" name="haslo" width="100" height="10"/></td>
</tr>
<tr>
<td>
<input type="submit" name="zaloguj" value="Zaloguj" width="100" height="20" />
</td>
</tr>
</table>
</form>
<br><br>
<a href="rejestracja.php">Rejestracja</a>
';
?>
Rejestracja.php
<?php
echo'
<link rel="Stylesheet" type="text/css" href="style.css" />
<b>Rejestracja</b>
<form method="post" action="zarejestruj.php">
<table width="200" border="0" cellspacing="0" cellpadding="0" >
<tr>
<td>Login</td>
<td>
<input type="text" name="login" width="100" height="10"/>
</td>
</tr>
<tr>
</tr>
<tr>
<td>Haslo</td>
<td><input type="text" name="haslo" width="100" height="10"/></td>
</tr>
<tr>
<td>
<input type="submit" name="rejestruj" value="Wyslij" width="100" height="14"/>
</td>
</tr>
</table>
</form>
';
?>
Zaloguj.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
$login = $_POST['login'];
$haslo = $_POST['haslo'];
$file = fopen ("konta.txt","r");
if (!$file)
{
echo 'BLAD! Problem z otwarciem pliku';
}
else
{
$dane = "$login $haslo\n";
while (!feof($file))
{
$linia = fgets($file,100);
if (!strcmp($linia, $dane))
{
$zalogowany=true;
break;
}
else{
$zalogowany=false;
}
}
fclose($file);
if($zalogowany)
{
echo 'Jestes zalogowany jako: <b>'.$login.'</b>' ;
echo '<img src="tick2.png" width="50" height="50">';
}
else{
echo 'Nie zalogowany';
echo '<img src="x.png" width="50" height="50">';
}
}
?>
Zarejestruj.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
$login = $_POST['login'];
$haslo = $_POST['haslo'];
$plik = fopen ("konta.txt","a");
if (!$plik){
echo 'Blad! Problem z otwarciem pliku';
}
else
{
$log = str_replace(" ","",$login);
$has = str_replace(" ","",$haslo);
$wpis = "$log $has\n";
fwrite($plik,$wpis,strlen($wpis));
fclose($plik);
echo 'Zostales zarejestrowany jako: <b>'.$login.'</b><br>';
include("index_logowanie.php");
}
?>
2. Obsługa sesji
· Napisać skrypt, który umożliwi przeprowadzenie procesu autoryzacja, z
wykorzystaniem mechanizmu sesji (nazwa użytkownika wyświetlana na każdej
stronie).
Index_zaloguj.php
<?php
echo'
<link rel="Stylesheet" type="text/css" href="style.css" />
<h2>Zaloguj</h2>
<h3>login: "krzychu", haslo: "dawid"</h3>
<form method="post" action="zaloguj.php">
<table width="200" border="0" cellspacing="0" cellpadding="0" >
<tr>
<td>Login:</td>
<td>
<input type="text" name="login" />
</td>
</tr>
<tr>
<td>Haslo:</td>
<td>
<input type="text" name="haslo" />
</td>
</tr>
<tr>
<td>
<input type="submit" name="dodaj" value="Zaloguj" width="100" height="14"/>
</td>
</tr>
</table>
</form> ';
?>
Zaloguj.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_name('autoryzacja');
session_start();
if(isset($_SESSION['login'])) $_SESSION['login'];
else $_SESSION['login']="";
if ($_POST['login'] == 'krzychu' && $_POST['haslo'] == 'dawid'){
$_SESSION['login'] = $_POST['login'];
echo 'Zostales zalogowany jako: '.$_SESSION['login'];
echo '<a href="strona_a.php">Strona_a</a> ';
echo '<a href="strona_b.php">Strona_b</a> ';
echo '<a href="strona_c.php">Strona_c</a> ';
}
else{
echo 'Blad autoryzacji<br>';
}
?>
Strona_a.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_name('autoryzacja');
session_start();
if (isset($_SESSION['login'])){
echo '<h3>Strona a jestes zalogowany jako: '.$_SESSION['login'].'</h3>';
echo '<a href="strona_a.php">Strona_a</a> ';
echo '<a href="strona_b.php">Strona_b</a> ';
echo '<a href="strona_c.php">Strona_c</a> ';
}
else {
echo 'Nie zalogowales sie!!!';
}
?>
Strona_b.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_name('autoryzacja');
session_start();
if (isset($_SESSION['login'])){
echo '<h3>Strona b jestes zalogowany jako: '.$_SESSION['login'].'<h3>';
echo '<a href="strona_a.php">Strona_a</a> ';
echo '<a href="strona_b.php">Strona_b</a> ';
echo '<a href="strona_c.php">Strona_c</a> ';
}
else {
echo 'Nie zalogowales sie!!!';
}
?>
Strona_c.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_name('autoryzacja');
session_start();
if (isset($_SESSION['login'])){
echo '<h3>Strona c jestes zalogowany jako: '.$_SESSION['login'].'</h3>';
echo '<a href="strona_a.php">Strona_a</a> ';
echo '<a href="strona_b.php">Strona_b</a> ';
echo '<a href="strona_c.php">Strona_c</a> ';
}
else {
echo 'Nie zalogowales sie!!!';
}
?>
3. Obsługa ciasteczek (Cookies)
· Przetestować czas życia ciasteczek.
Index_zycie.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_cache_limiter('nocache');
session_name('ciacho');
session_set_cookie_params(5);
session_start();
echo'
<form method="post" action="zycie1.php">
<table width="200" border="0" cellspacing="0" cellpadding="0" >
<tr><td><h3>Zmienna do przechowania przez ciasteczko</h3></td></tr>
<tr>
<td>
<input type="text" name="cookie" value="ciasteczko"/>
</td>
</tr>
<tr>
<td>
<input type="submit" value="Wyslij"/>
</td>
</tr>
</table>
</form> ';
?>
Zycie1.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_cache_limiter('nocache');
session_name('ciacho');
session_set_cookie_params(5);
session_start();
setcookie ('cookie',$_POST['cookie'], time()+5);
header('Location: zycie2.php');
?>
Zycie2.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
session_cache_limiter('nocache');
session_name('ciacho');
session_set_cookie_params(5);
session_start();
if (isset($_COOKIE['cookie']))
{ echo '<h3>Sesja nie wygasla przechowuje wartosc: '.$_COOKIE['cookie'].'</h3>';
}
else
{ echo '<h3>Ciasteczko wygaslo</h3>'; }
?>
?>
· Napisać skrypt pokazujący czas ostatniej wizyty internaty na naszej stronie
index_czas.php
<?php
echo '<link rel="Stylesheet" type="text/css" href="style.css" />';
date_default_timezone_set('Europe/Warsaw');
session_cache_limiter('nocache');
session_name('czas');
session_start();
if(!isset($_COOKIE['czas'])){
//$_COOKIE['czas'];
setcookie('czas',date("Y-m-d G:i:s"));
}
if($_SERVER['REQUEST_METHOD']== 'POST'){
Echo '<h3>Ostatnia wizyta '.$_COOKIE['czas'].'</h3>';
setcookie('czas',date("Y-m-d G:i:s"));
}
else
{
echo '<h3>Sprawdzanie czasu ostatniej wizyty</h3>';
}
echo '<form method="POST" action="">
<input type="submit" value="Sprawdz czas" />
</form> ';
?>