Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 为什么textarea在表单提交时显示旧内容?_Php - Fatal编程技术网

Php 为什么textarea在表单提交时显示旧内容?

Php 为什么textarea在表单提交时显示旧内容?,php,Php,我有一个textarea,我可以更新它的内容,然后当我单击submit按钮时将其发送到db: <form action="" method="POST" class="myForm" autocomplete="off"> <textarea name="newContent" class="form-control" rows="10"><?php the_content(); ?></textarea> <input id="u

我有一个textarea,我可以更新它的内容,然后当我单击submit按钮时将其发送到db:

<form action="" method="POST" class="myForm" autocomplete="off">
  <textarea  name="newContent" class="form-control" rows="10"><?php the_content(); ?></textarea>
  <input id="update_content" name="subContent" type="submit" value="Update">
</form>

<?php
    $post = array(
        'ID' => $id,
        'post_content' => $_POST['newContent']
    );
    if ('Update' === ($_POST['subContent'] ?? false)) {
        wp_update_post($post, true); 
    }
?>

一切都很好,数据库已经更新。然而,当页面在表单提交时重新加载时,文本区域会显示旧内容。如果手动刷新页面,则会看到新内容


我还尝试添加了在输出表单之前需要更新的

<代码>更新代码>表单,不是
表单->更新代码
@Sean而是
wp\u update\u post($post,true)
用于更新数据库,为什么我以前也要使用它?我知道
wp\u update\u post($post,true)更新数据库。但是,在输出表单之前,需要先检查这些代码。所以它应该是
。。。wp_update_post($post,true)然后
内容()。这就是为什么您的文本区域显示旧代码,因为它是在您更新/更改之前从数据库中提取的,以及为什么您必须手动刷新页面。@Sean这不是它的工作方式。除了检查缓存之外,我手动更新页面以进行测试,而不是出于技术原因。这就是它正在发生的事情<代码>wp_更新_发布($post,true)
用于
表单内容发送到数据库,而不是
读取
。您可以看到,在发送问题的代码中,我有一些
条件
。问题可能在
内容()
中,因为正如您所提到的,刷新会获得正确的数据,因此您必须检查该函数中如何处理数据。