php - 页面刷新 WP PHP

标签 php mysql wordpress caching

在 Siteground 上,我已经安装了 WP,并且在“wp-admin”、“wp-content”和“wp-includes”的同一目录中创建了一个名为“test”的文件夹。我还创建了自己的数据库,未连接到 wp_database。在测试文件夹中有一些 PHP 测试页面用于与我自己的数据库交互。问题是,每次我想通过这个 PHP 测试页面在我自己的数据库中编辑或添加一些内容时,用户界面不会刷新内容;我每次都必须按 F5 才能看到更改。

我认为这可能是与我的浏览器或 WordPress 相关的缓存问题,但我不确定。我尝试清理浏览器缓存,但没有任何改变。下面的代码是 PHP 测试页面(test.php)的示例

<?php
  $con_my_db = mysqli_connect($servername, $username, $password, $dbname);

  require( '../wp-load.php' );
  if(isset($_GET['add']){
    if($_POST){
      $insertquery = "INSERT INTO suppliers(name, code, address, phone) VALUES 
 ('$company' ,'$code' ,'$address' ,'$phone')";

      $resultinsertquery = $con->query($insertquery);
      if($resultinsertquery){
    echo 'Added';
      }else{
    echo 'Error';
      }
    } 
  }
?>
<a href="test.php">Back</a>
<form action="test.php?add=1" method="POST">
  <input type="text" name="name"><br>
  <input type="text" name="code"><br>
  <input type="text" name="address"><br>
  <input type="text" name="phone"><br>
  <input type="submit" value="Submit">
</form>

<?php
  }else{    
   $suppliers = $con->query("SELECT * FROM suppliers");
?>

<a href="test.php?add=1">Add supplier</a>
<table>
    .... list of the suppliers (avoided useless code)
</table>

<?php } ?>

提交表单并检索“已添加”输出后,我按“后退”链接查看供应商列表,但它没有显示刚刚添加的新供应商。刷新浏览器页面就可以了。问题是我不想每次都刷新页面来查看所做的更改。我该如何修复它?

最佳答案

您没有看到更新的数据,因为输入数据后布局不会自动更新。每当提交表单时,您都会检查 $_GET["add"] ,因此 else 部分当时不会运行,并且当您刷新页面时,不会设置 $_GET["add"] 变量,并且将从数据库中获取更新的供应商列表...

如果您不想每次添加新供应商时都刷新页面,则必须使用ajax提交表单并刷新布局,或者添加此行header("Refresh:0; url=test.php");之后echo("added");输入成功后会自动刷新页面,无需手动刷新页面...

或者您可以移动 $suppliers = $con->query("SELECT * FROM suppliers");从 else 部分中删除并删除 else block ,以便每次都会从数据库中获取数据..

关于php - 页面刷新 WP PHP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58353256/

相关文章:

mysql - 同时使用 MongoDB 和 MySQL 的 Hadoop 配置

php - 如何将页面附加到自定义帖子类型

PHP,检查 URL 和文件是否存在?

javascript - 我的滑出菜单可以在 HTML 中运行,但不能在 PHP 中运行

java - 在PHP中读取Java发送的HttpRequest

javascript - 如何选择 while 循环中的 href 变量?

php - 加速 php api 调用

PHP将数据存储到mysql数据库时出现语法错误

MYSQL DISTINCT 关键字不起作用

mysql - 使用 where 子句更新两个表的内连接的列值