我将我的PHP文件移动到一个子文件夹,它不再工作了

我将我的PHP文件移动到一个子文件夹,它不再工作了,php,jquery,ajax,action,subdirectory,Php,Jquery,Ajax,Action,Subdirectory,下面是我网站上文件夹的文档树。在我的html表单中,action属性包含以下值:delete_post.php。当我将操作更改为/do/delete_post/index.php时,它将无法工作。我怎样才能改变这个:do/delete_post/index.php或其他一些东西来让它工作? index.php文件如下所示: <?php session_start(); if (!isset($_SESSION['user']) || empty($_POST['id'])) {

下面是我网站上文件夹的文档树。在我的html表单中,action属性包含以下值:delete_post.php。当我将操作更改为/do/delete_post/index.php时,它将无法工作。我怎样才能改变这个:do/delete_post/index.php或其他一些东西来让它工作?

index.php文件如下所示:

<?php
session_start();
if (!isset($_SESSION['user']) || empty($_POST['id'])) 
  {
  header( "Location: /" );
  die();
  }
require_once( dirname(__FILE__) . '/includes/db.php')
$stmt2 = $db->prepare('DELETE FROM posts WHERE id = ?');
if (!$stmt2->execute(array($_POST['id'])))
  {
  print_r($stmt2->errorInfo());
  die();
  }
header( "Location: /" );

?>

当我使用php中的jquery在下一页中发出ajax请求时,index.php无法删除帖子。

您是否可以导航到/do/delete\u post/index.php而不显示任何错误或在php错误日志中

我怀疑:

包括路径问题

-或-


使用.htaccess重写某些url。根目录中是否有.htaccess文件

您的工作流中是否包含任何文件

如果使用相对路径,则它们总是相对于当前工作目录CWD,CWD通常是执行脚本的目录

如果更改delete_post.php的文件夹,并且包含一个脚本,其中包含具有相对路径的其他脚本,则这些脚本将无法加载,因为CWD将不同

因此,不要使用相对路径,而是使用以下路径:

include dirname(__FILE__) . '/data.inc.php';

它怎么不起作用?发送表单时会出现什么错误?你的网址到底是什么?我使用的是ajax,除非我使用数据包嗅探器,否则我看不到错误。@好奇的你为什么不能使用Firebug的“网络”选项卡?比猜测要好得多,这是我们在这个阶段所能做的。我有firebug lite,但没有firebug。我看不到净账单,我想你是对的。在我的index.php中,我有下面显示的这行代码,它应该包含root/includes/db.php中的一个文件。我如何更改下面的php行来解决我的问题?require_once'/includes/db.php'@好奇的web开发者:不,因为/includes/db.php是从Linux安装的根开始的绝对路径。。。我怀疑你的档案在那里能解决。。。但是,您可以将其更改为需要\u once dirname\u文件/includes/db.php”。我试过你说的了。它仍然不起作用。我在问题中添加了index.php的源代码,如果有帮助的话。@inquisitive\u web\u开发者:好吧,如果您确实移动了文件,您需要将该文件中的require\u once更新为require\u once dirname\u文件。'/..//包括/db.php'