我是 OO php 的新手,所以这看起来很基本..
基本上我有一个用户可以预订的课程列表。我已经得到它,因此用户可以从他们的列表中删除课程,但我希望在他们删除后向他们显示一条消息。我做了一些类似于我想要的东西:
<form name="removecourse" action="<?php bloginfo('url');?>/user/<?php echo $current_user->first_name ; ?>" method="post">
<input type="hidden" value="<?php the_id();?>" name="courseid" />
<input id="removebutton" type="submit" name="removecourse" value="Remove">
</form>
表单将所需的数据发送到同一页面,并在该页面的顶部检查表单帖子名称是否存在于 $_POST[] 中,如下所示:
if(isset($_POST['removecourse']) && !empty($_POST['removecourse'])){
$courseManager->delete_post($_POST['courseid'], $_POST['cancel-reason']);
echo $courseManager->delete_response;
};
这就是类和对象部分的用武之地......
public $delete_response;
function delete_post($postid, $reason){
//stuff to actually delete the post
$this->delete_response = 'Thanks, your course has been removed.';
}
所以在这里我向 delete_response 变量添加一个值,并在页面顶部调用它。这可行,但是当我刷新页面时,消息仍然存在,因为我正在重新提交 POST。我只是想知道我正在做的事情是否正确,以及如何实现发布/重定向/获取类型功能以阻止消息出现在页面刷新上?