Sähköisten asiointipalveluiden toteuttaminen

Sorakuilu

Demo 10, funktioita, syötteiden käsittelyä

10.1 salasanan suojaus

Seuraavien funktioiden (password_hash ja password_verify) avulla suojataan salasanat.

Siis: Suojaa sana "salasana", tulosta se suojattuna. Vertaa suojattua sanaa toisessa muuttujassa olevaan samaan sanaan ja lisäksi sanaan "salainen".

10.2 filter_var - merkkijono

Poista html seuraavasta lauseesta ja tulosta lopputulos:

<h1>Hei! Kuinka voit tänään?</h1>

10.3 filter_var - kokonaisluku

Tarkista, onko annettu kokonaisluku validi:

$int = 20;

10.4 filter_var - URL

Tarkista, onko annettu URL validi
172.16.254.1

10.5 filter_var - sähköposti

Validoi ja sanitoi seuraava sähköpostiosoite:

someone@@example.com

10.6 filter_var - kokonaisluku ja väli

Validoi kokonaisluvun arvo ja tarkista, onko se jossain välissä:

75

Lähdekoodi

<h3>10.1 salasanan suojaus</h3>
<?php
/*Seuraavien funktioiden (password_hash ja password_verify) avulla suojataan salasanat.
Siis: Suojaa sana "salasana", tulosta se suojattuna. Vertaa suojattua sanaa toisessa muuttujassa olevaan samaan sanaan ja lisäksi sanaan "salainen".*/

$muuttuja ="salasana";
$tokamuuttuja "salainen";

$salattumuuttuja password_hash($muuttuja,PASSWORD_DEFAULT); //hajottaa salasanan

echo $salattumuuttuja."<br>";

if( 
password_verify("salasana",$salattumuuttuja)) echo "Ovat samat<br>";
else echo 
"Eivät osu<br>";

if(
password_verify($tokamuuttuja,$salattumuuttuja)) echo "Ovat samat<br>";
else echo 
"Eivät osu<br>";
?>

<h3>10.2 Merkkijonon sanitointi</h3>
<?php
$merkit 
"<h1>Hei! Kuinka voit tänään?</h1>";
echo 
$merkit;
$sanitoidutmerkit filter_var($merkit,FILTER_SANITIZE_STRING);
echo 
$sanitoidutmerkit."<br>";
?>
<h3>10.3 Kokonaisluvun validointi</h3>
<?php
$luku 
"ttt";

if(
filter_var($luku,FILTER_VALIDATE_INT))  echo "$luku on validi kokonaisluku";
else echo 
"$luku ei ole validi";
?>

<h3>10.4 URL:n validointi</h3>
<?php
$url 
"https://www.leeniemi.net";

if(
filter_var($url,FILTER_VALIDATE_URL) == TRUE) echo "$url on validi";
else echo 
"$url ei ole validi";
?>
<h3>10.5 EMAIL, validointi ja sanitointi</h3>
<?php
$email 
"someone@@example.com";

//sanitointi
$email filter_var($email,FILTER_SANITIZE_EMAIL);
echo 
$email."<br>";

if(
filter_var($email,FILTER_VALIDATE_EMAIL)) echo "$email ok";
else echo 
$email." ei ole validi";
?>

<h3>10.6 validointi: kokonaisluku oikessa välissä</h3>
<?php 
$number 
75;

if(
filter_var($number,FILTER_VALIDATE_INT, array("options"=>array("min_range" => 0"max_range" => 100)))) {
    echo 
"$number on kokonaisluku ja välillä 0 - 100";
} else { 
    echo 
"$number ei ole kokonaisluku väliltä 0 - 100";
}