如果我按下按钮,从特定的“活动”获取“ActivityID”

时间:2013-01-21 10:06:41

标签: php javascript

我正在创建一个从mysql数据库中删除记录的按钮。

我创建了一个包含3个表的数据库,1:user,2:activity,3:user_activity。 在user_activity中,您可以找到UserID(来自用户)和ActivityID(来自活动)。

我已经做了一个可以将UserID和ActivityID添加到user_activity表的脚本。但现在我还想要一个删除该“行”的按钮。

所以我使用onclick函数制作了这个javascript代码:

$(".deleteActivity").click( function() {

    var user_activityId = $(this).data('activity');

    $.ajax({
        type: "POST",
        url: "delete_activity.php",
        data: {
            activity: user_activityId
        },
        dataType: 'json',
        success: function (data) {          
        }
    });
    $(this).hide(); 
});

我制作了这个delete_activity.php文件:

<?php
  include "connection.php";

  $sql = "SELECT * FROM user WHERE Username = '".$_SESSION['Username']."' ";
  $stm = $db->prepare($sql);
  $result = $stm->execute(array());
  while($row = $stm->fetch(PDO::FETCH_ASSOC)) {
  $userID = $row['UserID'];
  echo $userID;
}

  $sql = "SELECT * FROM user_activity WHERE UserID = '".$userID."' ";
  $stm = $db->prepare($sql);
  $result = $stm->execute(array());
  while($row = $stm->fetch(PDO::FETCH_ASSOC)) {
  echo $row['ActivityID'];
}
?>

这是按钮:

echo '<input type="button" class="deleteActivity"  value="Activiteit verwijderen" data-activity="' . $row['ActivityID'] . '">';

正如你所看到的,不要删除任何东西,我只是“回显”ID,所以我可以看到ID并检查它们是否正确。

我想从我按下按钮的“活动”中获取ActivityID。使用此ActivityID,可以完成我的查询:

$sql = "SELECT * FROM user_activity WHERE UserID = '".$userID."' AND ActivityID = ??? ";

我希望一切都清楚,并且有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

在您的查询中使用您发布的user_activity_id:D我不知道您user_activity_id的列名称,因此请根据您的情况进行修改。

$userActivityId = filter_input(INPUT_POST, "activity");

$sql = "SELECT * FROM user_activity WHERE UserActivityId = :id";
$stm = $db->prepare($sql);
$stm->bindValue( ":id", $userActivityId, PDO::PARAM_INT);
if($stm->execute())
{
    $rows = $stm->fetchAll();
    foreach($rows as $row)
    {
         echo $row['ActivityId'];
         break;
    }
}