使用ajax将数据发送到php脚本的问题

问题描述 投票:0回答:1

将表单数据通过Ajax发送到PHP脚本时出现问题。发送数据时,我遇到了这种错误

致命错误:找不到类Libs \ Controller

我已经编写了自己的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文件中加载我的类

php ajax
1个回答
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,所以你不能“看到”库文件夹。您需要使用../向后移动一步,然后访问该文件夹及其文件。

© www.soinside.com 2019 - 2024. All rights reserved.