1

私はコミュニティに不慣れで、これがこれまでの私の最初の質問です。

私はこれで1時間前に立ち往生しました。セッションは、ユーザーがログインしているかどうかをチェックし、インクルード付きlogin-form_eng.phpまたはlogout-form_eng.phpインクルード付きで表示します。問題は、表示されている画像が3回表示され、include関数を1回だけ呼び出していることです。

<body>

<div id="full-wrap" class="container-wrap">
    <div id="header-wrap" class="secondary-wrap">
        <h1 class="linky-logo" title="elcoma.com"></h1>
        <div id="main-menu-wrap" class="secondary-wrap">
            <table border="0"cellspacing="0"cellpadding="0">
                <tr><td>
                    <a class="linky8"title="Home"onclick="alert('Button Click')">
                </td><td>   
                    <a class="linky2"title="News"onclick="alert('Button Click')">
                </td><td>
                    <a class="linky3"title="Products"onclick="alert('Button Click')">
                </td><td>
                    <a class="linky4"title="Services"onclick="alert('Button Click')">
                </td><td>
                    <a class="linky5"title="About Us"onclick="alert('Button Click')">
                </td><td>
                    <a class="linky6"title="Contact"onclick="alert('Button Click')">
                </td>
            </tr>
        </table>
    </div>
</div>
<div id="login-logoff-wrap" class="secondary-wrap">
<?php
session_start();
if(isset($_SESSION['user']))
{
    echo "Welcome back ". $_SESSION['user']. ". Please enjoy your stay at our site!";
    include "logout-form_eng.php";
} else {
    echo "Welcome guest. Please log in or register at our site";
    include "login-form_eng.php";
}
?>
</div>
</div>

問題がどのように見えるかへのリンクは次のとおりです。

写真

編集

どうやら、phpスクリプトの周りの2つのdivが問題を引き起こしていたようです。しかし、私はまだ理由を説明することはできません、誰かが私にそれを説明できますか?

すべてのdivからすべてのクラスを1つずつ削除してから、divの削除を開始しました。このようにして、phpログインスクリプトの周りの2つのdivがどういうわけかスクリプトを「呼び出している」という解決策にたどり着きましたか?他に説明はありませんが、有効な説明をいただければ幸いです。ありがとうございました!

4

2 に答える 2

1

session_start() は、ページ上のすべての出力の前に配置する必要があります。PHP の前にある HTML は、出力と見なされます。

2 つの PHP ページの PHP を投稿していないので、これらのページの 1 つに、それ自体にループバックするリダイレクトがある可能性はありますか?

また、 include_once() を使用して、ページが複数回含まれないようにします。 http://php.net/manual/en/function.include-once.php

于 2012-04-16T17:08:37.770 に答える
0

CSS を確認します。クラスsecondary-wrapは DOM で 3 回使用されます。あなたのCSSでは、画像が背景として使用されていると思います.secondary-wrap

.my-pictureこれを解決するには、追加のクラスを貼り付けることができます<div>

<div id="header-wrap" class="secondary-wrap my-picture">

背景画像を.secondary-wrapから newに移動します.my-picture


class="secondary-wrap"または、他の 2 つの div から削除します。

<div id="main-menu-wrap" class="secondary-wrap">

<div id="login-logoff-wrap" class="secondary-wrap">

このクラスに他に関連する CSS がない場合。

于 2012-04-16T17:53:10.197 に答える