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_vypsatzakaznici))
{
echo „Přjmení:
<b>“.$mysql_vypiszakaznici[‚prijmeni‘].„</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.
ohodnoťte nejlepší odpověď symbolem palce
Zajímavá 0 před 4697 dny |
Sledovat
Nahlásit
|
ŘÁDEK S ISSET():
říká se tomu ternární operátor. Je to podmínka napsaná ve stylu
$a = ( podminka ? toto_se_priradi_pokud_JE_splnena :
toto_se_priradi_pokud_NENI_splnena );
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ů.
0 Nominace Nahlásit |
Otázka nemá žádné další odpovědi.
U otázky nebylo diskutováno.
Nový příspěvekBedy | 1527 | |
Michal Kole | 1199 | |
led | 1147 | |
Hlada | 1127 | |
mosoj | 1125 | |
gecco | 904 | |
www | 828 | |
badisko | 817 | |
cochee | 816 | |
Dochy | 716 |
Software |
Hardware |
Internet |
Programování a webdesign |
Sítě |
Bezpečnost |
Ostatní počítače a internet |