[英]Messaging issues!
我有一個正常運行的消息傳遞腳本。 我正在嘗試做的是允許2件額外的事情。
一個是給我發消息按鈕。 其次是回復功能。
用戶發送消息時,他們從下拉框中選擇它們。 因此,它類似於<option value ="id">
,並顯示用戶名。
使用“給我發送消息”按鈕時,我假設我需要發布用戶名並從列表中選擇它。 回復時,我又發布了用戶名,並從列表中選擇了該用戶名?
<form method='post' action='<?php echo $_SERVER['PHP_SELF']; ?>?p=new'>
<input type='hidden' name='rfrom' value='<?php echo $row['username']; ?>' />
<input type='hidden' name='rsubject' value='Re: <?php echo $row['title']; ?>' />
<input type='hidden' name='rmessage' value='Re: <<?php echo $row['message']; ?>>' />
<input type='submit' name='reply' class="button" value='Reply' />
</form>
這是回復代碼。 如您所見,我將用戶名作為$_POST['rfrom']
我想出了以下代碼,從列表中選擇用戶。
$fromname=(isset($_POST['rfrom'])) ? $_POST['rfrom'] : ''; //ought to validate $_POST
$selected=($u==$fromname) ? 'selected="selected"' : '';
echo "<option value='$uid'>$u</option>";
這是行不通的,當我單擊“答復”時,我只是列表中的第一個用戶。
另外,有人可以確認是否可以使用ID代替用戶名來執行此操作嗎? 使用該按鈕從用戶個人資料發送新消息時會更容易。
感謝您的閱讀,希望能對您有所幫助!
我現在通過使用$_POST['rfrom']
傳遞用戶ID。
用戶ID將是選項值。
不過,我仍然無法在列表中選擇正確的用戶。
有人請幫忙!
我絕對會在表單的POST中使用userId,並在另一端將其驗證為INT,這也將防止Drop O'Tables之類的名稱破壞表單。
在輸出選擇框選項時,您忘記了包含$selected
。
更改:
echo "<option value='$uid'>$u</option>";
至:
echo "<option value='$uid' $selected>$u</option>";
Firefox中有一個bug,在刷新頁面或使用瀏覽器后退按鈕時,它無法正確識別selected="selected"
。 在其他瀏覽器中對此進行測試,以確保實際上是問題所在。
從Mozillazine復制的逐字記錄:
按下Shift鍵的同時按下Reload按鈕。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.