Autor Zpráva
Rym
Profil *
Ahoj, mám problém s následujícím scriptem. Jedná se o skript z jedné učebnice AMP. I přesto, že jsem tento script několikrát kontrolovat s onou učebnicí stále mi to po vyhodnocení háže chybu: Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING on line 19. Co s tím?

<?php
include("mysql_log.php");
$dotaz = "SELECT movie_name, movie_director, movie_leadactor FROM movie";
$vysledek = mysql_query($dotaz,$spojeni)
  or die (mysql_error() );
$pocet_filmu = mysql_num_rows($vysledek);
$filmy_zahlavi=<<<EOD
<h2><center>Databáze filmových recenzí</center>
  </h2><table width="70%" border="1" cellpading="2" cellspacing="2" align="center">
    <tr>
      <th>Název filmu</th>
      <th>Rok uvedení na plátna kin</th>
      <th>Režisér</th>
      <th>V hlavní roli</th>
    </tr>
  EOD;
$filmy_podrobnosti='';
while($radek = mysql_fetch_array($vysledek)){
  $nazev_filmu = $radek['movie_name'];
  $reziser = $radek['movie_director'];
  $v_hlavni_roli = $radek['movie_leadactor'];
  $filmy_podrobnosti.=<<<EOD
    <tr>
      <td>$nazev_filmu</td>
      <td>$reziser</td>
      <td>$v_hlavni_roli</td>
    </tr>
    EOD;
    }
$filmy_podrobnosti.=<<<EOD
  <tr>
    <td>&nbsp</td>
  </tr>
  <tr>
    <td>Celkem filmů: $pocet_filmu.</td>
  </tr>
</table>
EOD;
?>


Předem děkuji za odpověď.
Tori
Profil
Chyba je n ř.16, ty mezery na začátku. Koukněte se na správnou syntaxi heredoc.
Rym
Profil *
Aha, díky. Když ten tabulátor odmažu, tak sice chybová hláška zmizí, ale na výstupu mám úplně prázdnou stránku.
Tori
Profil
Koukám, že i ř.28 je špatně (tatáž chyba). Jinak jestli je tohle celý skript, tak nikde nevidím žádné echo.

edit: Druhá dvě použití heredoc (od ř.22 a 30) nejsou nutná, klidně to může být celé v uvozovkách. IMHO má smysl používat heredoc akorát u několikařádkových bloků, které obsahují jak proměnné, tak uvozovky - člověk se tak vyhne nutnosti escapování uvozovek, kde se snadno něco přehlédne.
Rym
Profil *
Díky, už vše běží jak má.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0