2009-12-09 51 views
0

我試圖從未登錄的成員中隱藏下面列出的代碼,我該怎麼做?我需要更改或添加哪些代碼部分?使用PHP和MySQL隱藏非成員網頁的一部分?

這是我只想登錄成員查看的代碼。

<div id="r"> 
    <h2>some thing</h2> 
     <form method="post" action="index.php"> 
      <fieldset> 
       <input type="text" size="40" class="g" name="tag" value="<?php if (isset($_POST['tag'])) echo $_POST['tag']; ?>" /> 
       <input type="submit" name="submit" id="submit" value="s" class="t" /> 
       <input type="hidden" name="submitted" value="TRUE" /> 
       <br /> 
       <span>(Some words)</span> 
      </fieldset> 
     </form> 
</div> 
+0

你使用什麼樣的認證/會話機制?即腳本如何確定它是否正在處理登錄用戶的請求? – VolkerK 2009-12-09 16:16:39

+1

'<?php if(!isset($ _ SESSION ['userid']))>> – SlapThiS 2009-12-09 16:21:25

回答

1

它取決於你如何跟蹤他們如何登錄。我假設你有$ _SESSION中的東西。如果是你,你可以這樣做:

<?php if($_SESSION['logged_in']): ?> //whatever variable you use for logins. 
    <div id="r"> 
     //your html here 
    </div> 
<?php endif; ?> 
+0

啊。看起來像你打敗了我;) – 2009-12-09 16:18:01

+0

我試過這沒用,我會再試一次。 – SlapThiS 2009-12-09 16:26:31

+0

它第二次哇。 – SlapThiS 2009-12-09 16:27:45

1

比方說,你已經存儲了指示是否有人有類似$_SESSION['loggedin']登錄一個布爾值。在這種情況下,你真正需要做的是:

<?php 

if ($_SESSION['loggedin']) { 
    echo <<<HTML 
<div id="r"> 
     <h2>some thing</h2> 
       <form method="post" action="index.php"> 
         <fieldset> 
           <input type="text" size="40" class="g" name="tag" value="<?php if (isset($_POST['tag'])) echo $_POST['tag']; ?>" /> 
           <input type="submit" name="submit" id="submit" value="s" class="t" /> 
           <input type="hidden" name="submitted" value="TRUE" /> 
           <br /> 
           <span>(Some words)</span> 
         </fieldset> 
       </form> 
</div> 
HTML; 
} 

?> 
+0

這弄亂了我的HTML代碼:( – SlapThiS 2009-12-09 16:23:05

+0

它如何混淆你的HTML代碼? – 2009-12-09 16:47:46

+0

它拋出了我的CSS代碼。 – SlapThiS 2009-12-09 17:53:04