Errata aneb bug list knihy
PHP -- tvorba interaktivních internetových aplikací

I přes veškerou snahu se nepodařilo zabránit výskytu chyb v knize. Na této stránce naleznete seznam chyb seřazený podle čísla stránky, na které se vyskytují. Pokud v knize objevíte chybu, která v tomto seznamu není uvedena, napište mi. Nezapomeňte přesně popsat chybu a číslo strany, kde se vyskytuje.

Strana 36: Překlep v ukončovacím tagu

Chybná verze:

ODBC_Result($vysledek, "Mesto")."</SMALL><TD></TR>";

Opravená verze:

ODBC_Result($vysledek, "Mesto")."</SMALL></TD></TR>";

Chybu objevil Ivan Tinak 7. července 2000

Strana 44: Chybně uvedený kód znaku 'A' v osmičkové soustavě

Chybná verze:
Tak např. řetězěc "A\301\x41" obsahuje tři písmena 'A'.

Správná verze:
Tak např. řetězěc "A\101\x41" obsahuje tři písmena 'A'.

Chybu objevil Petr Sládek 27. března 2000

Strana 85: Použit termín lomítko místo zpětné lomítko

Chybná verze:
Pokud chceme použít metaznak v jeho původním významu, přidáme před něj lomítko.

Správná verze:
Pokud chceme použít metaznak v jeho původním významu, přidáme před něj zpětné lomítko.

Chybu objevil Dušan Janovský 17. září 2000

Strana 87: Překlep

Chybná verze:
Tisknutelné znaky (jako print, navíc je přidán znak mezera)

Správná verze:
Tisknutelné znaky (jako graph, navíc je přidán znak mezera)

Chybu objevil Zbyněk Diviš 28. června 2003

Strana 104: Chybějící uvozovky na konci řetězce

Chybná verze:

if ($Foto_type=="text/plain")
    Copy($Foto, "/data/chat/$Jmeno.txt");
elseif ($Foto_type=="image/gif)
    Copy($Foto, "/data/chat/$Jmeno.gif");
elseif ($Foto_type=="image/jpeg")
    Copy($Foto, "/data/chat/$Jmeno.jpeg);
else
    echo "Nepodporovaný formát obrázku: $Foto_type.";

Správná verze:

if ($Foto_type=="text/plain")
    Copy($Foto, "/data/chat/$Jmeno.txt");
elseif ($Foto_type=="image/gif")
    Copy($Foto, "/data/chat/$Jmeno.gif");
elseif ($Foto_type=="image/jpeg")
    Copy($Foto, "/data/chat/$Jmeno.jpeg");
else
    echo "Nepodporovaný formát obrázku: $Foto_type.";

Chybu objevil Ted240 18. února 2001

Strana 114: Chybějící zpětné lomítko

Chybná verze:

re = new RegExp("^[^@]+@[^.]+\..+$");

Správná verze:

re = new RegExp("^[^@]+@[^.]+\\..+$");

Chybu objevil Marek Laco 2. dubna 2001

Strana 120: Chybějící atribut ACCESSKEY

Chybná verze:

<BUTTON TYPE=SUBMIT>Odešli dotazní<U>k</U></BUTTON>

Správná verze:

<BUTTON TYPE=SUBMIT ACCESSKEY=K>Odešli dotazní<U>k</U></BUTTON>

Chybu objevil Zbyněk Diviš 28. června 2003

Strana 148: Chyba v příkazu pro znovunačtení přístupových práv MySQL

Chybná verze: mysql -u root -p reload

Opravená verze: mysqladmin -u root -p reload

Chybu objevil J. Kosek pár dní poté, co přišla k kniha z tiskárny >;-(

Strana 170-1: Chyba ve skriptech pro změnu záznamu v tabulce

Skript upravit.php umožňuje ve formuláři změnit osobní číslo zaměstnance, které je primárním klíčem tabulky. Při změně osobního čísla pak návazný skript update.php neví, který záznam má měnit. Nejjednodušší řešení, je zakázat možnost změny osobního čísla. např. takto:

Chybná verze (upravit.php):

<TR><TD>Osobní číslo:<TD><INPUT NAME=OsobniCislo VALUE="<echo $OC?>" SIZE=4>

Správná verze (upravit.php):

<TR><TD>Osobní číslo:<TD><?echo $OC?>
<INPUT TYPE=HIDDEN NAME=OsobniCislo VALUE="<?echo $OC?>">	

Chybná verze (update.php):

@$vysledek = ODBC_Exec($spojeni, 			// změna záznamu
      "UPDATE Zamestnanci SET
	      OsobniCislo = $OsobniCislo,
	      Jmeno = '$Jmeno',
	      RC = '$RC',
	      Adresa = '$Adresa',
	      Plat = $Plat WHERE OsobniCislo = $OsobniCislo");

Správná verze (update.php):

@$vysledek = ODBC_Exec($spojeni, 			// změna záznamu
      "UPDATE Zamestnanci SET
	      Jmeno = '$Jmeno',
	      RC = '$RC',
	      Adresa = '$Adresa',
	      Plat = $Plat WHERE OsobniCislo = $OsobniCislo");

Chybu objevil Jindřich 'Harry' Hlaváč 7. prosince 1999

Strana 191: Chyba v SQL příkazu pro vytvoření tabulky Pristupy

Chybná verze:

CREATE TABLE Pristupy (
  Stranka char(80) NOT NULL,
  Pocet int,
  ID char(14) NOT NULL,
  Pridano date,
  PRIMARY KEY (Stranka),
)

Opravená verze:

CREATE TABLE Pristupy (
  Stranka char(80) NOT NULL,
  Pocet int,
  ID char(14) NOT NULL,
  Pridano date,
  PRIMARY KEY (Stranka)
)

Chybu objevil Antonín Skopec 25. dubna 2000

Strana 207: Dva překlepy v příkladu pro náhodný výběr vtipů

Chybná verze:
FSeek($fp, Rand(0, FileSize("./vtipy.dat")/4) * 4);

Opravená verze:
FSeek($fp, Rand(0, FileSize($indexFile)/4 - 1) * 4);

Chybu objevil Zbyněk Diviš 31. srpna 2003

Strana 216, druhý odstavec: Překlep

Chybná verze:
Stojíme nyní před úkolem vytvořenit skript, ...

Opravená verze:
Stojíme nyní před úkolem vytvořit skript, ...

Chybu objevil Petr Hubík 18. února 2004

Strana 218: Chyba v parametru příkazu at

Chybná verze:
at 01:00 /every=M,T,W,Th,F,S,Su c:\php3\php.exe -f c:\skripty\mailvtip.php

Opravená verze:
at 01:00 /every:M,T,W,Th,F,S,Su c:\php3\php.exe -f c:\skripty\mailvtip.php

Chybu objevil J. Kosek pár dní poté, co přišla k kniha z tiskárny >;-(

Strana 241: Špatně umístěné komentáře

Chybná verze:
if (IsSet($id)): ?> // pokud máme otázku
...
// pokud nemáme otázku

Opravená verze:
if (IsSet($id)): // pokud máme otázku ?>
...
// pokud nemáme otázku ?>

Chybu objevil Zbyněk Diviš 31. srpna 2003

Strana 249: Chybějící identifikátor spojení do databáze

Chybná verze:
@$vysledek = ODBC_Exec("SELECT ...");

Opravená verze:
@$vysledek = ODBC_Exec($spojeni, "SELECT ...");

Chybu objevil Zbyněk Diviš 31. srpna 2003

Strana 255, druhý odstavec: Překlep

Chybná verze:
Ve volném časem si zběžně přečtětě ...

Opravená verze:
Ve volném čase si zběžně přečtěte ...

Chyby objevili Martin Fritsch 8. ledna 2004 a Jiří Včeliš 23. března 2004

Strana 267: Špatné pořadí parametrů funkce CheckDate

Chybná verze:
integer CheckDate(integer den, integer měsíc, rok)

Opravená verze:
integer CheckDate(integer měsíc, integer den, rok)

Chybu objevil Karel Beneš 25. ledna 2000

Strana 274: Chyba v parametrech funkce Date()

Chybná verze:
w - Číslo dne v týdnu (1-7)
z - Číslo dne v roce (1-365)

Správná verze:
w - Číslo dne v týdnu (0-6)
z - Číslo dne v roce (0-365)
Parametr formátovacího řetězce w vrací číslo dne v týdnu od 0 do 6. 0 přitom odpovídá neděli, 1 pondělí a šestka sobotě. Tedy tak, jak je zvykem v anglosaských zemích.

Chybu objevil M. Pavlas 18. července 2000

Strana 292: Chyba v odkazu na funkce související s FGetS

Odkaz vede k funkci FGetS a vytváří nekonečnou smyčku. Související funkcí je samozřejmě FGetC na téže straně.

Chybu objevil Michal Král 13. dubna 2000

Strana 330: Chybí některé parametry funkce IMAP_ListMailBox

Chybná verze:
array IMAP_ListMailBox(integer spojení)

Opravená verze:
array IMAP_ListMailBox(integer spojení, string server, string maska)
Server je adresa zapsaná ve složených závorkách (podobně jako v IMAP_Open). Jako maska se nejčastěji používá `*'.

Chybu objevil Martin 'Murphy' Mareš 4. ledna 2000

Strana 331: Chyba v pořadí parametrů funkcí IMAP_Mail_Copy a IMAP_Mail_Move

Chybná verze:
integer IMAP_Mail_Copy(integer spojení, string schránka, string zprávy, integer možnosti)
integer IMAP_Mail_Move(integer spojení, string schránka, string zprávy)

Opravená verze:
integer IMAP_Mail_Copy(integer spojení, string zprávy, string schránka, integer možnosti)
integer IMAP_Mail_Move(integer spojení, string zprávy, string schránka)

Chybu objevil Honza Vrbata 22. října 1999

Strana 338: Chybějící array

Chybná verze:

$adresa = ("Jan Novák", "Dlouhá 13", "Praha 1", "110 00");

Opravená verze:

$adresa = array("Jan Novák", "Dlouhá 13", "Praha 1", "110 00");

Pozn.: V novějších verzích PHP je preferováno opačné pořadí parametrů ve funkci Implode() -- nejprve spojovací text a pak pole. Fungují však obě varianty.

Chybu objevil Ivo Musil 30. září 2000

Strana 342: Chyba v popisu funkce Is_Real()

Chybná verze: Jde o synonymum k funkci Is_Real().

Správná verze: Jde o synonymum k funkci Is_Double().

Chybu objevil Luděk Uiberlay 6. června 2004.

Strana 358: Chyba v popisu funkce Mail()

Chybná verze: Pokud chceme dopis poslat na více adres, můžeme v parametru komu uvést více adres oddělených mezerou.

Opravená verze: Pokud chceme dopis poslat na více adres, můžeme v parametru komu uvést více adres oddělených čárkou.

Chybu objevil Michal 'Spaze' Špaček 30. listopadu 1999.

Strana 412: Chyba v příkladu funkce SNMPGet()

Chybná verze:

echo SNMPGet("146.117.13.2:, "public", "system.sysContact.0");

Opravená verze:

echo SNMPGet("146.117.13.2", "public", "system.sysContact.0");

Chybu objevil Lukáš Rubek 27. ledna 2005.

Poslední úprava $Date$
© Jiří Kosek 1999