用ajax向php脚本发送数据的问题

时间:2018-11-29 09:25:35

标签: php ajax

在通过Ajax向PHP脚本发送表单数据时遇到问题。发送数据时出现此类错误

  

致命错误:找不到类库\控制器

我已经编写了自己的MVC项目结构,并且如果我仅通过POST请求发送数据,但是使用AJAX发送时却收到此错误,则它的工作正常

use Libs\Controller;

use PHPMailer\PHPMailer\PHPMailer;
use PHPMailer\PHPMailer\Exception;


class Contact extends Controller {
  //rest code to send email with PHPMailer
}

这是js脚本

$("#contact-form").on('submit', function (e) {
    $(".validmessage").css("display", "block");
    e.preventDefault();

    $.ajax({
        url: "/../../app/controllers/Contact.php",
        type: "POST",
        data: $(this).serialize(),
        success: function (data) {
            $("#form_output").html(data);
        },
        error: function (jXHR, textStatus, errorThrown) {
            alert(errorThrown);
        }
            });
        });

我的文件结构:

controllers
 - Contact.php
-libraries
  - Controllers.php
  - Core.php
  - Database.php

使用PSR自动加载器将我的类加载到index.php文件中

1 个答案:

答案 0 :(得分:3)

   require '../libraries/Controllers.php'

    use PHPMailer\PHPMailer\PHPMailer;
    use PHPMailer\PHPMailer\Exception;


    class Contact extends Controller {
      //rest code to send email with PHPMailer
    }

您需要后退一步才能访问控制器。目前,您在contact.php中,因此无法“看到”库文件夹。您需要使用../向后移1步,然后访问该文件夹及其文件。