Autor Zpráva
Klonomon
Profil *
Prosím o pomoc, virtuální server mi hlásí chybu:
Parse error: syntax error, unexpected $end in C:\Program Files (x86)\EasyPHP-5.3.8.0\www\akcivypis.php on line 101
Nemůžu jí ale najít :o/.

<?php
$query_error = 'Došlo k chybě při zpracování SQL dotazu v databázi.'; //chybová hláška
if (!IsSet($_GET['action'])) $_GET['action'] = "view"; //ještě není zinicializována proměnná $action
if (!IsSet($_GET['what'])) $_GET['what'] = "new"; //ještě není zinicializována proměnná $what
if (!IsSet($_GET['page'])) $_GET['page'] = 0; //ještě není zinicializována proměnná $page

if ($_GET['action'] == "view"): //zobrazujeme zprávy
 require "config.php"; //otevřeme databázi
?>


<link href="styleakce.css" rel="stylesheet" type="text/css">
 <body bgcolor="#FEECC2">
 <table width="600" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr><td class="tableheading">

	<?php
	//zobrazujeme aktuální nebo staré zprávy
	if($_GET['what']=="new"):
		echo "->> Aktuální akce:";
		$sql = "datum >= NOW()";
	else:
	  	echo "->> Staré, již proběhlé akce:";
		$sql = "datum < NOW()";
	endif;
	?>	 	
 	<hr width="100%" size="1" color="#7D7642" noshade>
  </td></tr>
 </table>
 
 <?php
$_GET['view_number'] = 15; //zprávy budou zobrazeny po ...
$_GET['start'] = $_GET['page']*$_GET['view_number']; //první zpráva, která se zobrazí
 $message = MySQL_Query("SELECT * FROM akce WHERE $sql ORDER BY id DESC LIMIT $start,$view_number") or die($query_error); //vybíráme zprávy - seřazeno podle id

 //vypíšeme tabulky se zprávami
 while ($entry = MySQL_Fetch_Array($message)): ?>
 
	
	 <table width="600" border="0" cellspacing="0" cellpadding="0" align="center" bgcolor="#FFD982"><tr><td>
	 <table width="100%" border="0" cellspacing="0" cellpadding="4" align="center" bgcolor="#FFD982">
	  <tr>
	 	<td class="table">
		 
     <?php
		 $_GET['from'] = Explode("-", $entry["datum"]); //od
		 $_GET['to'] = Explode("-", $entry["datum"]); //do

 		 
		 echo "<span class=\"nazev\"><b>" . $entry["nazev"] . "</b></span>"; //Akce
		 echo "<br>";
		 echo "<span class=\"termin\"><b>" . $entry["termin"] . "</b></span>"; //Termín 
		 echo "<br><br>";
		 echo "<span class=\"popis\">" . $entry["popis"] . "</span>"; //Popis
		 echo "<br><br>";
		 echo "<span class=\"autor\"><i>Zapsal: " . $entry["autor"] . "</i></span>"; //Jméno
 	 	 ?>
 		 </td>
	  </tr>
	 </table>
	</td></tr>
         </table><br>
<?php endwhile;
?>
<table width="600" border="0" cellspacing="0" cellpadding="0" align="center">	

</table>
 <table width="600" border="0" cellspacing="0" cellpadding="0" align="center">
  <tr>
<td align="left" class="tableheading">

</td>

<td align="right" class="table">
 	
	<b>strana: 
	<?php
$page = $_GET['page'];
$what = $_GET['what'];
$count = $_GET['count'];
$page_count = $_GET['page_count'];


    // odkazy na starší zprávy (u právě zobrazené zprávy se odkaz nevytvoří)
    $count = MySQL_Query("SELECT id FROM akce WHERE $sql") or die($query_error); // výběr zpráv
    $page_count = Ceil(MySQL_Num_Rows($count)/$view_number); // počet stran, na kterých se zprávy zobrazí
    for($i=0;$i<$page_count;$i++):
        echo " | ";
        if($page!=$i) echo '<a href="board.php?action=view&what=' . $what . '&page=' . $i . '">';
        echo ($i+1);
        if($page!=$i) echo '</a> ';
    endfor;
    MySQL_Close(); // zavření databáze
    ?>
	|</b>
  </td></tr>
 </table> 
Davex
Profil
Klonomon:
Nemůžeš najít neočekávaný konec ve skriptu? K této chybě obvykle dochází, když není správně ukončený některý úsek kódu. Zkontroluj si, zda mají všechny podmínky a cykly konec.
Klonomon
Profil *
Davex:
Právě to jsem hledal, jsem začátečník, takže mé vědomosti jsou omezeny pouze na to, že jsem zkontroloval zda jsou na konci řádků středníky a případně pokud je dvojtečka, tak zda je ukončená nějakým příkazem. A nic jsem právě nenašel :(.

Proto jsem chtěl požádat, zda by mi někdo mohl alespoň navigovat na konkrétní část scriptu.
Alphard
Profil
Nevidím endif; pro if na 7. řádku.
Doporučuji používat {} a editor, který zobrazí párové.
Klonomon
Profil *
Alphard:
Děkuji, bylo to ono.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

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

0