1

jQuery メニューとユーザーのセッションに問題があります。jQueryにメニューがあり、このメニューの1つの選択肢は「ログイン」です。この下でマウスオーバーすると、「ログイン」と「新しいアカウントを登録」でサブメニューが開きます。今度は「ログアウト」の「ログイン」の声を変えたいと思います。私はこのコードで試しました:

<li>
    <a href="#">
        <img src="images/1.gif" alt=""/>
        <span class="sdt_active"></span>
        <span class="sdt_wrap">
            <span class="sdt_link">Login</span>
            <span class="sdt_descr">Enter or register an account</span>
        </span>
    </a>
    <div class="sdt_box">
        <?php  
            session_start(); 
            if(!isset($_SESSION['username'])){
                print("<A HREF=\"login.php?logout=1\">login</A>");
            } else { 
                print("<A HREF=\"login.php?logout=1\">logout</A>");
            } 
        ?>
        <a href="#">Register an new account</a>         
    </div>
</li>

メニューがアニメーション化されなくなったため、このコードは機能しませんが、静的で機能しません。

次に、セッションがある場合は、「ログアウト」を表示する必要があります。それ以外の場合は「ログイン」を表示します。手伝って頂けますか?

編集: これは Login2.php (ユーザー名とパスワードが正しい場合にセッションが開始されるかどうか) で、login1 tjere は html 形式のみです。

    <?php $con = mysql_connect("localhost","root","ascent");
if (!$con)
{
die('Could not connect: ' . mysql_error());
}
mysql_select_db("utenti", $con);
$sql="SELECT username, password FROM utenti where username='$_POST[username]' and password='$_POST[password]'
union
select username, password from aziende where username='$_POST[username]' and password='$_POST[password]'";
$risultato=mysql_query($sql);
$prova=mysql_num_rows($risultato);
if($prova==1){
$_SESSION['username'] = 1;
header("location: lavori.php");
echo "Login effettuato con successo";
}
else {
echo "Dati incorretti";
}
mysql_close($con);
?>

ページの最初の 2 行は

<?php ob_start(); ?>
<?php session_start(); ?>

編集:編集:私は最終的に問題を解決しました!

 <?php if(!isset($_SESSION['username']))
                {
                        echo'<a href="login.html">Esegui l accesso</a>';
                }
                else
                {
                    echo'<a href="logout.php">Esegui il logout</a>';
                }
                ?>

問題は ECHO にありました。私は (" ") を使用しますが、出力 HTML コードには ' ' を使用する必要があります。

4

1 に答える 1

0

session_start();ファイルの先頭に置くようにしてください。

<?php session_start(); ?>
<html>
  <head>
    ...
  </head>
  <body>
    <li>
      <a href="#">
        <img src="images/1.gif" alt=""/>
        <span class="sdt_active"></span>
        <span class="sdt_wrap">
          <span class="sdt_link">Login</span>
          <span class="sdt_descr">Enter
                  or register an account</span>
          </span>
       </a>
       <div class="sdt_box">
       <?php if(empty($_SESSION['username'])) : ?>
           <A HREF="login.php?logout=1">login</A>
       <?php else : ?>
           <A HREF="login.php?logout=1">logout</A>
       <?php endif; ?>
         <a href="#">Register an new account</a>         
        </div>
     </li>
  </body>
</html>
于 2012-12-07T12:26:18.860 に答える