PHP – prostředí

informatika

 

Otázka: PHP – prostředí

Předmět: Informatika, Programování

Přidal(a): cadys

 

Úvod

  • Jazyk PHP je skriptovací jazyk na úrovní backendu, který komunikuje s databází, ale dokážeme pomocí něj vytvářet I funkce, dynamické prostředí a frontend. Uvozuje se tagem <?php a končí ?>. Pomocí php můžeme i zobrazovat html a css <?php echo “<div style=“Your_mother“>Hello world <br/><div/>“?>.
  • PHP se řadí do rodiny C-like jazyků, není však typovaný. Existuje spoustu knihoven a frameworků (FW NETTE, symphony). Téměř 80 procent stránek užívá PHP – jazyk na komunikaci se servrem.
  • Pro instalaci a použití php si musíme nainstalovat tzw WAMP (Windows, Apache, MySQL, PHP). Jedná se o softwarový balíček, který obsahuje veškeré potřebné komponenty pro vytvoření funkčního serveru na počítači Windows. Existuje také LAMP (Linux). Spouštíme si tak vlastní lokální server na svém počítači.

 

Pojmy

  • Apache:
    • Apache je populární open-source webový server, který poskytuje prostředky pro zpracování HTTP požadavků a poskytování webových stránek a aplikací uživatelům. WAMP obsahuje Apache server, který může být jednoduše nakonfigurován a spuštěn na Windows.
  • MySQL:
    • MySQL je open-source relační databázový systém, který umožňuje ukládání, správu a zpracování dat ve webových aplikacích. WAMP zahrnuje MySQL jako součást balíčku, což umožňuje uživatelům vytvářet a testovat webové aplikace, které vyžadují databázi.
  • PHP:
    • PHP je populární skriptovací jazyk určený pro vývoj dynamických webových stránek a aplikací. WAMP obsahuje PHP interpret, který umožňuje uživatelům psát skripty a programy v PHP a spouštět je na lokálním webovém serveru.
    • Fungování WAMP je poměrně jednoduché. Po instalaci WAMP stačí spustit aplikaci a následně spustit Apache server a MySQL databázi. Poté můžete vytvářet a testovat webové aplikace vytvořené v PHP pomocí Apache serveru a přistupovat k databázi MySQL pro ukládání a zpracování dat. WAMP poskytuje uživatelům prostředí, ve kterém mohou vytvářet a testovat webové aplikace na jejich vlastním počítači před jejich nasazením na produkční server.

 

Zápis

  • Komentář se píše /* a ukončuje se */, pro jednořádkový se píše //
  • Každý příkaz musí končit ;
  • Proměnná se definuje pomocí $var = “String“. “ pokračování, tečka spojuje řetězce“;
  • Konstanta se definuje pomocí define(“Name_const“,“value – číslo bez uvozovek“);
  • Pole  $age=array(„Peter“=>“35“);
    • echo „Peter is “ . $age[‚Peter‘] . “ years old.“;
  • Expanze proměnné znamená, že když je proměnná v echu a je ohraničena uvozovkami, vypíše se její hodnota, avšak pokud je echo uvozeno apostrofy, proměnná se nevypíše a zobrazí se jen holý text
  • Chceme-li zahrnout např. funkce ze souboru function.php nebo navigační lištu stránky, použijeme příkaz require “function.php“; pokud chceme, aby se soubor provedl nebo vypsal pouze jednou např. při připojení databáze, napíšeme require_once “connect_db.php“;
  • Phpinfo() vypíše info o stávající verzi php
  • Pro vypsání proměnné můžeme použít i fci print(). Pokud chceme vypsat pole, musíme napsat print_r(). Pole definujeme jako $pole = array(prvek1, prvek2,…); Pole může obsahovat i podpole. $pole = array(‚a‘, ‚b‘, 1, 2, array(‚první‘ => ‚podpole‘, ‚vytištěno‘)); podpole má klíčovou hodnotu první. Získám jí pomocí print($pole[4][první]);
  • === provede krom hodnoty čísla i kontrolu typu

 

Řídící struktury

  • Prostě funkce.

 

Předdefinované fce

  • V PHP existuje několik předdefinovaných globálních proměnných, které jsou automaticky dostupné ve všech skriptech bez ohledu na jejich umístění. Tyto proměnné poskytují informace o prostředí, aktuálním požadavku a další užitečné informace. Zde je seznam některých z nejčastěji používaných předdefinovaných proměnných v PHP:
    • $_GET: Obsahuje data získaná z řetězce dotazu (query string) v URL adrese požadavku GET.
    • $_POST: Obsahuje data odeslaná formulářem metodou POST.
    • $_REQUEST: Obsahuje data odeslaná formulářem metodou GET nebo POST, stejně jako data z cookies.
    • $_SESSION: Obsahuje data o relaci aktuálního uživatele. Umožňuje ukládat a získávat informace o uživateli přes více stránek.
    • $_COOKIE: Obsahuje hodnoty cookies poslané klientem do serveru.
    • $_FILES: Obsahuje informace o nahrávaných souborech pomocí HTML formuláře typu „file“.
    • $_SERVER: Obsahuje informace o serveru a běžícím skriptu, jako jsou cesty k souborům, hlavičky HTTP požadavku a další.
    • $_ENV: Obsahuje informace o prostředí serveru, například proměnné prostředí nastavené v konfiguračním souboru serveru.
    • $_SESSION: Obsahuje data o aktuální relaci uživatele.
    • $_GLOBALS: Obsahuje odkazy na všechny globální proměnné v PHP skriptu.
  • Tyto proměnné jsou velmi užitečné při práci s webovými formuláři, správě relací, zpracování nahrávaných souborů a získávání informací o prostředí serveru a běžícího skriptu.

 

<?php
define("BR", "<br/>\n");

// klasicky C-like for cyklus
for ($x = 0; $x <= 10; $x++) {
    echo "The number is: $x " . BR;
}

// foreach cyklus
$colors = array("red", "green", "blue", "yellow");
foreach ($colors as $value) {
    echo "$value " . BR;
}

// foreach cyklus nad asoc. polem
$people = array("Josef" => "47", "Martin" => "45", "Joe" => "43");
foreach ($people as $name => $age) {
    echo "$name $age" . BR;
}

// switch
$favcolor = "red";
switch ($favcolor) {
    case "red":
        echo "Your favorite color is red!" . BR;
        break;
    case "blue":
        echo "Your favorite color is blue!" . BR;
        break;
    case "green":
        echo "Your favorite color is green!" . BR;
        break;
    default:
        echo "Your favorite color is neither red, blue, nor green!" . BR;
}

// if-then-elseif-else
$hour = date("H"); // do $hour hodina z aktualniho casu
if ($hour < "10") {
    echo "Have a good morning!" . BR;
} elseif ($hour < "20") {
    echo "Have a good day!" . BR;
} else {
    echo "Have a good night!" . BR;
}
?>

 

Session

  • Http je bezstavový protokol, proto po vykonání příkazu a doručení stránky uživateli práce pro server končí a ten ji zapomíná.
  • Někdy si potřebujeme informace o např. uživateli uchovat. Proto se používá tzv. session (sezení). Spouští se pomocí session_start(). http tak uloží informace do tzv. cookies (sušenek) který pak www prohlížeč serveru vždy pošle a ten tedy ví, o jakého uživatele se jedná a ví potřebné informace. Tyto informace se pak ukládají do super globální proměnné $_SESSION[atribut], která je dostupné ze všech funkcí i stránkách dokumentu, který tuto session obsahuje (viditelná).
  • Pokud session chceme ukončit, použijeme session_destroy(). Pokud v doméně běží více php aplikací využívající session, musíme session pojmenovávat => session-name().

 

Formuláře

  • Odeslat informace z formuláře můžeme pomocí dvou metod – Get a Post.
  • Do metody get se vejde jen určité množství znaků a ukládá se příkazového řádku prohlížeče – je lehce napadnutelné a omezená délka.
  • Do metody post se vejde delší množství znaků a není vidět. Jsou totiž odeslána na standartní vstup (asi serveru).

 

HTML
<form method="get">
    <input type="text" name="filter"/>
    <input type="submit" value="Submit"/>
</form>

PHP

<?php
// Načteme hodnotu z filtrovacího pole
$filter = isset($_GET["filter"]) ? $_GET["filter"] : '';

// Zobrazíme hodnotu filtru
echo "Hodnota filtru: " . htmlspecialchars($filter);
?>

HTML
<form method="post">
    <input type="text" name="filter"/>
    <input type="submit" value="Submit"/>
</form>

PHP

<?php
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    // Načteme hodnotu z filtrovacího pole a ochráníme proti XSS útokům
    $filter = htmlspecialchars($_POST["filter"]);
    echo "Zadaný filtr: " . $filter;
}
?>

💾 Stáhnout materiál   ✖ Nahlásit chybu
error: Stahujte 15 000 materiálů v naší online akademii 🎓.