4 tei notatki php

Notatki z tematów : funkcje, tablice, data w PHP

<?php

function powitanie()
{
    echo "witam serdecznie<br>";
}

powitanie();

function powitanie2()
{
    return "witaj Drogi użytkowniku <br>";
}

$pow = powitanie2();
echo $pow;

function oblicz()
{
    $zm1 = 5;
    $zm1+=4;
    $zm1++;
    return $zm1;
}

if (oblicz() > 9)
    echo "f-kcja zwraca wartosc wieksza niz 9 <br>";
else
    echo "wartosc zwracana jest mnijesza ";

function przywitaj($zm_imie)
{
    echo 'Witaj '. $zm_imie. ' !';

}

$imie = "Stefan";

przywitaj($imie);
echo "<br>";
przywitaj("Mikołaj");

echo "<br>";
echo "<br>";


function kwadrat($liczba)
{
    return $liczba*$liczba;

}

$num = 8;
$wynik = kwadrat($num);

echo $wynik;
echo "<br>";


function silnia($liczba)
{
    $wynik = 1 ;
    while($liczba > 1)
    {
        $wynik *= $liczba;
        $liczba--;
    }
    return $wynik;
}

echo silnia(5);


// funkcja rekurencyjna czyli kożysta sama z siebie 

function silniarek($liczba)
{
    if ($liczba < 2 )
        return 1;
    else
        return $liczba*silniarek($liczba-1);

}
echo "<br>";


echo silniarek(5);


echo "<hr>";

$tab[0] = 1;
$tab[1] = 9;
$tab[2] = 6;
$tab[3] = 0;

for ($i = 0; $i <4; $i++)
    echo $tab[$i];


$zm_x = 25;

$i = 0; 
$j = 0;

while ($i <= $zm_x)
{
    if ($i % 4 == 0)
    {
        $tab[$j] = $i;
        $j ++;

    }
    $i++;
}

for($i = 0; $i<$j; $i++)
    echo $tab[$i]. "<br>";

$tab_u[0] = "Edek";
$tab_u[1] = "Kredek";
$tab_u[2] = "23-10-1997";

$tab_k[0] = $tab_u;

$tab_u[0] = "Stefania";
$tab_u[1] = "Krzywonos";
$tab_u[2] = "2-07-1997";

$tab_k[1] = $tab_u;

$tab_u[0] = "Marek";
$tab_u[1] = "Nowak";
$tab_u[2] = "21-01-1995";

$tab_k[2] = $tab_u;

echo $tab_k[2][1];

// tablice asocjacyjne
$klasy = array();

$uczen['imie'] = 'Stefan';
$uczen['nazwisko'] = 'Burczymucha';
$uczen['data'] = '12-12-2001';

$klasy[] = $uczen;

$uczen['imie'] = 'Wiktoria';
$uczen['nazwisko'] = 'Burczymucha';
$uczen['data'] = '14-10-2001';

$klasy[] = $uczen;

var_dump($klasy);

//forech pętla do przeszukiwania tablic 
echo "<br>";

$numbers = array();
for($i=0;$i<10;$i++)
{
    $numbers[] = $i;

}
foreach($numbers as $number)
{
     echo $number;
}

echo "<br>";

$uczen = array();
$uczen['imie'] = 'Stefan';
$uczen['nazwisko'] = 'Burczymucha';
$uczen['data'] = '12-12-2001';

foreach($uczen as $key => $dane)
{
    echo "wartość dla indeksu: $key to: $dane <br>";
}
?>
// data 

<?php

$date = date("Y-m-d");
$czas = date("H:i");

echo "stroną wyśiwetlono dnia $date o godzinie $czas";
echo "<br>";

$data = date("Y-m-d, H:i", mktime(0,0,0,10,15,1985));
echo $data;
echo "<br>";

echo time();

?>

program z podsumowania:

* urodziny.html* 
<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>wpisz date urodzenia</title>
</head>
<body>
<form action="oblicz.php" method="get">

    <label> Wpisz dzień: <input type="text" name="dzien"></label><br/>
    <label> Wpisz miesiąc: <input type="text" name="miesiac"></label><br/>
    <label> Wpisz rok: <input type="text" name="rok"></label><br/>
    <input type="submit" value="OK">
</form>

    
</body>
</html>


* oblicz.php*

<?php

function wyp_dzien($data)
{
    echo "urodziłeś się w: ";
    echo date("l ", mktime(0,0,0,$data['miesiac'], $data['dzien'], $data['rok']));

}

function oblicz_dni($data)
{
    $czas = (time()- mktime(0,0,0,$data['miesiac'], $data['dzien'], $data['rok']))/60/60/24;
    return $czas;
}

$data['dzien'] = $_GET['dzien'];
$data['miesiac'] = $_GET['miesiac'];
$data['rok'] = $_GET['rok'];

wyp_dzien($data);

echo "<br>tyle dni mineło od dnia Twoich narodzin:  ";
echo rand(oblicz_dni($data),1);

?>

Wyrażenia warunkowe, walidacje itp

<?php
echo rand(5,30); // wyświetlamy losowe liczby z przedziału 5-30 
echo "<br>";

// - łączenie stringa operatorem kropki + konkatenacja
$wys = "Bardzo";
$wys .= " lubię";
$wys .= " PHP.";

echo $wys; 

echo "<br>";

// implode do łączenia stringów 
$data[0] = "16";
$data[1] = "05";
$data[2] = "1996";

$wyswietl = implode("-", $data);
echo $wyswietl;
echo "<br>";

// sprawdzamy czy występują jakiś tekst wewnatz stringa 
$tekst = "churra mamy 4 dni wolnego ! ";

$sprawdz = strpos($tekst, "cholera");


if ($sprawdz == false)
    echo "można wyświetlać: $tekst";
else
    echo "tekst zawiera słowa zakazane";

echo "<br>";

// explode do rozdzielania stringa do inne zmienne. 

$dane = "Konstanty,Wieszcz,Katowice";

$dane_osobowe = explode(",", $dane);

echo $dane_osobowe[0]."<br>";
echo $dane_osobowe[1]."<br>";
echo $dane_osobowe[2]."<br>";

// zamiana wszystkich liter na duże
echo strtoupper("Ala ma Kota");
echo "<br>";

// zamiana na małe litery
echo strtolower("ZAMIEniaMY TEKST na mAłE LITERKI");
echo "<br>";

// zamiana tylko pierwszej litery na dużą 
echo ucwords("mateusz siemiez");
echo "<br>";


// funkcja do sprawdzenia liczy znaków w ciągu
echo strlen("Napis jest bardzo długi ciekawe ile to będzie znaków ?");
echo "<br>";

// usuwanie białych znaków na początki i końcu 
echo trim("      usuń spacje  z        tekstu     ");

// wyrażenia regularne 

//konstrukcja wyrazenia 

$wyrazenie = '/^[a-z]+$/';

$tekst = "bocian leci ";
echo "<br>";


if (preg_match($wyrazenie, $tekst))
    echo ("tekst zawiera tylko małe litery bez polskich znaków.");
else
    echo ("tekst zawiera dodatkowe znaki ");

//  /^[a-eA-E0-8]$/

/*  ZNaki specjalne 
.	Zastępuje dowolny znak
\s	Spacja
\n	Znak nowej linii
\d	Cyfra
^	Początek linii lub zaprzeczenie
$	Koniec linii
|	Alternatywa
{a,b}	Ilość wystąpień danego wzorca – co najmniej a i co najwyżej b razy
{a,}	Jak wyżej, bez limitu górnego
{,b}	Jak wyżej, bez limitu dolnego
{a}	Dokładnie a wystąpień
?	Zero lub jedno wystąpienie; tak samo jak {0,1} 
+	Jedno lub więcej wystąpień; tak samo jak {1,}
*	Dowolna ilość wystąpień (również zero); podobnie jak {0,}
[]	Zakres  

/^[\.]$/ - znak \ jeżli chcemy potraktowac np kropke jako kropke 
    */

// walidacja imienia  i nazwiska

echo "<br>";

$imie = "Mateusz";
$nazwisko = "Siemież";

$sprawdz = '/(*UTF8)^[A-ZŁŚ]{1}+[a-ząęółśżźćń]+$/';

if (preg_match($sprawdz, $imie))
{
    if (preg_match($sprawdz, $nazwisko))
        echo "podano poprawne dane. ";
    else 
        echo "błędne nazwisko.";

}
else 
    echo "Błędne imie";


// walidacja mejla 

echo "<br>";

$email = "ignacy@mail.com";

$sprawdz = '/^[a-zA-Z0-9.\-_]+@[a-zA-z0-9\-.]+\.[a-zA-Z]{2,4}$/';

if (preg_match($sprawdz, $email))
    echo "podano prawidłowy adres e-mail";
else
    echo "błędny e-mail";
?>

walidacja formularzy !

<!DOCTYPE html>
<html lang="pl">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Kontakt</title>
</head>
<body>
    <form action="sprawdz.php" method="post">

        <label>Imie: </label><input type="text" name="imie"><br>
        <label>Telefon: </label><input type="number" name="telefon"><br>
        <label>E-mail: </label><input type="email" name="email"><br>
        <label>Treść wiadomości : </label><textarea name="tresc">TUTAJ WPISZ SWOJĄ WIADOMOŚĆ</textarea><br>
        <input type="submit" value="Wyślij">
    </form>
</body>
</html>
<?php

function sprawdz_email($email)
{
    $spr = '/^[a-zA-Z0-9._\-]+@[a-zA-Z0-9.\-]+\.[a-zA-Z]{2,}$/';
    return preg_match($spr, $email) === 1;
}

function sprawdz_imie($imie)
{
    $sprawdz = '/^[a-zA-ZŁŚĆŻŹĄĘÓŃąęółźżćńś]+$/u';
    if (preg_match($sprawdz, $imie)) {
        $imie = ucfirst(strtolower($imie));
        return $imie;
    } else {
        return false;
    }
}

function sprawdz_tel($telefon)
{
    $sprawdz = '/^[0-9]{9}$/'; // 9 cyfr, np. 501234567
    return preg_match($sprawdz, $telefon) === 1;
}

function sprawdz_tresc($tresc)
{
    $tresc = trim($tresc);
    if (strlen($tresc) < 30)
        return false;
    else
        return htmlspecialchars($tresc); // zabezpieczenie XSS
}

// Odbiór danych
$email = $_POST['email'] ?? '';
$imie = $_POST['imie'] ?? '';
$telefon = $_POST['telefon'] ?? '';
$tresc = $_POST['tresc'] ?? '';

$blad = false;

// Walidacja
if (!sprawdz_email($email)) {
    echo "Adres e-mail niepoprawny<br>";
    $blad = true;
}

$imie = sprawdz_imie($imie);
if (!$imie) {
    echo "Imię wpisano niepoprawnie<br>";
    $blad = true;
}

if (!sprawdz_tel($telefon)) {
    echo "Błędny format telefonu<br>";
    $blad = true;
}

$tresc = sprawdz_tresc($tresc);
if (!$tresc) {
    echo "Niepoprawna treść wiadomości (min. 30 znaków)<br>";
    $blad = true;
}

if ($blad) {
    echo "<br>Wystąpił jeden lub więcej błędów podczas przetwarzania danych.";
} else {
    echo "<h3>Dane poprawne:</h3>";
    echo "Imię klienta: $imie<br>";
    echo "Adres e-mail: $email<br>";
    echo "Numer telefonu: $telefon<br>";
    echo "Treść wiadomości: $tresc<br>";
}
?>

Podobne wpisy

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *