-3

このコードは、「else」が含まれている行に構文エラーを提供しています。どんな提案でも、ありがとう!

<?php
if($_SESSION['id'])
echo '<div id="center" class="column">';
include("center.php");
echo'</div>
<div id="left" class="column">';
include("leftbar.php");
echo'</div>
<div id="right" class="column">';
include("rightbar.php");
echo '</div>';
else
echo '<h1>Staff please, <a href="index.php">login</a> 
before accessing this page, no access to students.</h1>';
?>
4

2 に答える 2

0

あなたはそれらをブロックの中に入れる必要があります。ブロックはで始まり、{で終わり}ます。

if($_SESSION['id']) {
  echo '<div id="center" class="column">';
  include("center.php");
  echo'</div>
  <div id="left" class="column">';
  include("leftbar.php");
  echo'</div>
  <div id="right" class="column">';
  include("rightbar.php");
  echo '</div>';
}
else {
  echo '<h1>Staff please, <a href="index.php">login</a> 
  before accessing this page, no access to students.</h1>';
}

isset()PS: if条件の中で使用することをお勧めします。そのようです:

if( isset($_SESSION['id']) ) {
于 2013-03-14T22:20:05.007 に答える
0

はい、私の提案は角かっこを使用することです。現在、コードは基本的に次のようになっています。

<?php
if($_SESSION['id']) {
    echo '<div id="center" class="column">';
}
include("center.php");
echo'</div>
<div id="left" class="column">';
include("leftbar.php");
echo'</div>
<div id="right" class="column">';
include("rightbar.php");
echo '</div>';
} else {} <--- error is here because there is no open if statement since you didn't use brackets
echo '<h1>Staff please, <a href="index.php">login</a> 
before accessing this page, no access to students.</h1>';
?>

角かっこを使用しなかったため、if条件は次のコード行にのみ適用されることに注意してください。パーサーがelse行にヒットすると、elseが関連するif条件は開かれません。

コードは次のようになります。

<?php
if($_SESSION['id']) {
    echo '<div id="center" class="column">';
    include("center.php");
    echo'</div><div id="left" class="column">';
    include("leftbar.php");
    echo'</div><div id="right" class="column">';
    include("rightbar.php");
    echo '</div>';
} else {
    echo '<h1>Staff please, <a href="index.php">login</a> before accessing this page, no access to students.</h1>';
}
?>
于 2013-03-14T22:20:31.260 に答える