2010-05-26 72 views
0

我有以下代碼:回覆郵件

<select name="to" class="combo" value=' 
      <?php 
      if(isset($_POST['reply'])) 
      { 
       echo "<option value='$reply'>$reply</option>"; 
      } 
      ?> 
      ' /> 
      <?php 

      $q = $database->selectAllUsersNotMe(); 
      while($row=mysql_fetch_assoc($q)) 
      { 
       $u=$row['username']; 
       echo "<option value=\"$u\">$u</option>"; 
      } 
      ?> 
      </select> 

這樣做是產生一個組合框與我的網站上所有用戶排除用戶發送消息的下拉菜單。

我想添加一個回覆元素的消息。 當我點擊回覆,我用下面的代碼:

   <? $reply = $_POST['rfrom']; ?> 


     <form name='reply' method='post' action='/newmessage.php'> 
     <input type='hidden' name='rfrom' value='<?php echo $pm->messages[0]['from']; ?>' /> 
     <input type='hidden' name='rsubject' value='Re: <?php echo $pm->messages[0]['title']; ?>' /> 
     <input type='hidden' name='rmessage' value='[quote]<?php echo $pm->messages[0]['message']; ?>[/quote]' /> 
     <input type='submit' name='reply' value='Reply' /> 
    </form> 

的值是正確的,肯定通過使用POST信息。

在我提供的最初代碼片段中,我如何更改它,以便我回復時選擇的用戶名被選中,如果不是,用戶名只是被列出。 感謝

回答

0
$fromname=(isset($_POST['rfrom'])) ? $_POST['rfrom'] : ''; //ought to validate $_POST 
while($row=mysql_fetch_assoc($q)) { 
    $u=$row['username']; 
    $selected=($u==$fromname) ? 'selected="selected"' : ''; 
    echo "<option value=\"$u\" $selected>$u</option>"; 
} 
0
$replyUser = $_POST['rfrom']; 
while($row = mysql_fetch_object($q)) 
{ 
if($row->username == $replyUser) 
{ 
echo('<option value="'.$row->username.'" selected="selected">'.$row->username.'</option>'); 
}else{ 
echo('<option value="'.$row->username.'">'.$row->username.'</option>'); 
} 
}