簡體   English   中英

檢查單擊了哪個按鈕

[英]Checking Which Button was Clicked

我有一個PHP生成的表單,其中包含一個項目列表,每個項目旁邊都有一個按鈕,顯示“ Remove This”,其輸出類似於以下內容:

Item A - [Remove This]
Item B - [Remove This]
...

我希望能夠單擊“刪除此項目”,它將檢測到它是哪個項目,然后將其從數據庫中刪除。 到目前為止,這是我的代碼:

selectPlaces.php

<?php
include 'data.php';

mysql_connect($host, $user, $pass) or die ("Wrong Information");

mysql_select_db($db) or die("Wrong Database");

$result = mysql_query("SELECT * FROM reseller_addresses") or die ("Broken Query");
while($row = mysql_fetch_array($result)){
    $placeName = stripslashes($row['b_name']);
    $placeCode = stripslashes($row['b_code']);
    $placeTown = stripslashes($row['b_town']);
    $outputPlaces .= "<strong>$letter:</strong> $placeName, $placeTown, $placeCode <input type=\"button\" onclick=\"removePlace()\" value=\"Remove This\" /><br />";
}

mysql_close();
?>

加上我的admin.php

        <div id="content" style="display:none">
        Remove a Place<br><br>
        <?php include 'selectPlaces.php'; echo $outputPlaces; ?> 
        </div>

我知道我需要添加一些JavaScript來檢測單擊了哪個按鈕,但似乎無法正常工作。 我試圖通過在函數removePlace(placeID)或類似的變量中傳遞變量來修改onclick =“ removePlace()”,但是我是JavaScript新手,我也不知道如何在removePlace函數中接收它。

您不需要JavaScript。 嘗試運行以下示例:

<?php var_dump($_POST); ?>
<form action="post.php" method="post">
    <p>
        <input type="submit" value="a" name="action" />
        <input type="submit" value="b" name="action" />
    </p>
</form>

您會看到$_POST['action']將取決於按下哪個按鈕。 對於您的示例,您只需要設置值以標識需要刪除的項目。 為此使用<button>元素可能會很有用: <button name="delete" type="submit" value="12345">delete item 12345</button> 提交時,它將顯示為$_POST['delete'] ,值為12345。

如果沒有JavaScript,這似乎更容易實現。 對於每個條目,而不只是生成一個按鈕,請生成一個表單,該表單發布到執行刪除操作的PHP腳本中。

<form action="deletePlace.php?id=<?php echo $idOfThePlace?>">
<input type="submit" value="Remove This" />
</form>

$idOfThePlace將是您用來標識數據行的ID。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM