Avatar uživatele
Pokročilý

3 příkazy v php projektu - co znamenají

Ahoj, potřeboval bych vysvětlit pár příkazů (pouze 3) v mém php projektu (vždycky co který příkaz znamená, co dělá a proč jsme ho použili). S projektem mi pomáhal spolužák, ale ten teď odjel mimo ČR a nemůže mi poradit. Díky za odpovědi, zde je kód:

<?php
require "dtb.php";
$action = !isset($_GET["action"])?"": ($_GET["action"]);
?>
<h3>Customers</h3>
<a href="customer_list. php?action=vypsat">Customer list</a><br><br>
<?php
if ($action == "vypsat") {

$dotaz = "SELECT * FROM `zakaznici`";
if (!$mysql_vypsatzakaznici = MySQL_Query($dotaz))
echo mysql_error();
else
while ($mysql_vypiszakaznici = MySQL_Fetch_Array($mysql_vypsa tzakaznici))
{
echo "Přjmení: <b>". $mysql_vypiszakaznici['prijmen i']. "</b><br />";
echo "Jméno: ". $mysql_vypiszakaznici['jmeno'] . "<br /><br />";
}
}
?>
?>

Řádky kterým nerozumím: řádek s isset, řádek s podmínkou if a řádek s cyklusem while.

Uzamčená otázka – ohodnoťte nejlepší odpověď symbolem palce.

Nejlepší odpověď

Avatar uživatele
Pokročilý

ŘÁDEK S ISSET():
říká se tomu ternární operátor. Je to podmínka napsaná ve stylu
$a = ( podminka ? toto_se_priradi_pokud_JE_splne na : toto_se_priradi_pokud_NENI_spl nena );

Pokud bude podmínka splněna, bude do proměnné $a přiřazeno to, co je za otazníkem. V opačném případě to, co je za dvojtečkou.

Příklad:
$a = ( 5 > 10 ? 'ano, 5 je vetsi nez 10' : 'ne, pet neni vetsi nez 10' );
echo $a; // vypise 'ne, pet neni vetsi nez 10', protože podmínka splněna nebyla.

ŘÁDEK S IF:
uvnitř IFu se vykonává příkaz přiřazení výsledku funkce mysql_query() do proměnné $mysql_vypsatzakaznici. Normálně, pokud by funkce mysql_query() proběhla úspěšně a výsledek by byl přiřazen do proměnné $mysql_vypsatzakaznici, by podmínka byla splněna a provedl se kód hned za IFem, ale zde je před příkazem přiřazení použitý vykřičník, který vše neguje. To znamená že podmínka je splněna v případě, že do $mysql_vypsatzakaznici NEBYL přiřazen výsledek funkce mysql_query(), například pokud script není připojen k databázi. Takže v tomto případě se, pokud vytáhnutí dat z databáze z nějakého důvodu selže, podmínka je splněna a provede se vypsání výstupu funkce mysql_error(), která vrací popis chyby, ke které došlo.

ŘÁDEK S WHILE:
Cyklus while prochází sadu výsledků vrácenou z databáze (pomocí předchozího mysql_query) a přiřazuje je do proměnné $mysql_vypiszakaznici. V každém kroku cyklu se prochází jeden řádek z výsledného datasetu - pokud je tam tedy použito echo Příjmení.. jméno..., vypíše to v každém kroku jednoho zákazníka ze získaných výsledků.

 

Otázka nemá žádné další odpovědi.

Diskuze k otázce

 

U otázky nebylo diskutováno.

 

Přihlásit se

Položte otázku, odpovězte, zapojte se, …

začněte zde

Reklama

Kvalitní odpovědi v: Počítače a internet

Zlatý Bedy 1525
Zlatý Michal Kole 1198
Zlatý mosoj 1028
Zlatý Hlada 949
Zlatý ge0rge 894
Zlatý www 829
Zlatý led 819
Zlatý badisko 818
Zlatý gecco 795
Zlatý arygnoc 674

Zobrazit celkový žebříček

Facebook

 

Váš požadavek se vyřizuje, počkejte prosím.