如何获取isset输入值形式?

时间:2018-06-25 20:36:12

标签: php

我收到一些变量并开始一个会话,因为如果页面刷新,我想保留这些值,所以我这样做:

session_start();
$myId = $_POST['varPostId'];
$parts = explode(',', $myId);
if(!isset($_SESSION["myId"])){
    $_SESSION["myId"] = $parts;
}

然后我需要查询该数组:

query_posts(array(
    'post__in' => $_SESSION["myId"]
));

这很好,它将posts加载到ids中,但是由于我也可以remove加载其中的任何一个,因此我设置了一个form并将其删除做一个POST并更新custom field,我这样做:

<form id="saveId<?php echo $numForms; ?>" action="" method="POST" class="removeids" autocomplete="off">
    <input type="hidden" name="save_post_value" value="<?php foreach ($_SESSION["myId"] as &$value) { echo $value.", "; } ?>"> 
    <button data-thisPostId="<?php echo $idThisPost; ?>" type="button" class="removeJiku btn btn-outline-secondary">Remove</button>
</form>
<?php
    if($_SERVER['REQUEST_METHOD']=="POST") {
        if (isset($_POST['save_post_value'])) {
            unset($_SESSION["myId"]);
            update_user_meta( $user_id, 'save_post', $_SESSION["myId"] );
        }
    }
?>

但是我有两个问题:

  1. 我需要unset($_SESSION["myId"]);,但职位似乎有误,只有在我们remove时才需要取消设置
  2. update_user_meta( $user_id, 'save_post', $_SESSION["myId"]给出的是字符串Array,而不是实际值。

删除表单的输入值为ID

<input id="input_post_id" type="hidden" name="varPostId" value="94995,99559,95099"> 

然后我用jQuery删除ID和输入更新

<input id="input_post_id" type="hidden" name="varPostId" value="94995,95099">

现在应该使用update_user_meta( $user_id, 'save_post', $_SESSION["myId"] );将其保存在自定义字段中,但是由于它给出了Array,因此它在寻找ids时不会加载任何帖子。

0 个答案:

没有答案