Ajax принимает в не те данные в ответ

103
04 марта 2021, 06:20

ajax отправляет форму, все работает

$.ajax({
        type: "POST",
        url: "../profile/controllers/register_controller.php",
        dataType: "json",
        data: {
            'validEmail': validEmail,
            'validName': validName,
            'validPassword': validPassword,
            'validPassword2': validPassword2
        },
        beforeSend: function () {
            $("#do_register").prop("disable", true);
        },
        success: function (data) {
            alert(data.result);
            $("#do_register").prop("disable", false);
        },
        error: function (data) {
        }
    })

php ee принимает, тоэе все работает

<?php
namespace controllers;
$registerController = new RegisterController();
$registerController->register();
class RegisterController {
public function register() {
        $errors = array();
        $arrayFields = array(
            'name' => $_REQUEST['validName'],
            'email' => $_REQUEST['validEmail'],
            'password' => $_REQUEST['validPassword'],
            'password2' => $_REQUEST['validPassword2']
        );
        if ( isset($arrayFields['name']) ) {
        foreach ($arrayFields as $fieldName => $oneField) {
            if ($oneField == '' || !isset($oneField)) {
                $errors[$fieldName] = 'Required field';
            }
        }
        if (!filter_var($arrayFields['email'], FILTER_VALIDATE_EMAIL))
            $errors['email'] = 'Email is incorrect';
        if (iconv_strlen($arrayFields['name']) < 4)
            $errors['name'] = 'Name must be more than 4 characters';
        if (iconv_strlen($arrayFields['password']) < 6) {
            $errors['password'] = 'Password must be more than 6 characters';
        } else
            if ($arrayFields['password'] != $arrayFields['password2'])
                $errors['password2'] = 'Passwords do not match';
        if (empty($errors)) {
            $array = array('result' => 'success');
            echo json_encode($array);
            $db = new DBClass(SERVER, USER, PASS, DBNAME);
            $db->insert('user', [$arrayFields['email'],$arrayFields['password'], $arrayFields['name']], 'email, password, name');
        } else {
            $array = array('result' => 'error', 'text_error' => $errors);
            echo json_encode($array);
        }
    }
}
}

Но я получаю помимо json {"result":"success"} вот это


( ! ) Fatal error: Uncaught Error: Class 'controllers\DBClass' not found in /Library/WebServer/Documents/profile/controllers/register_controller.php on line 70 ( ! ) Error: Class 'controllers\DBClass' not found in /Library/WebServer/Documents/profile/controllers/register_controller.php on line 70 Call Stack #TimeMemoryFunctionLocation 10.0107383432{main}( ).../register_controller.php:0 21.5552383672controllers\RegisterController->register( ).../register_controller.php:5

Если заккоментировать вызов и работу с BD - всё отлично, алёрт работает

Только начал учить php и ajax, наверное глупая ошибка, но справиться никак не могу

READ ALSO
Вопрос по структуре классов ООП

Вопрос по структуре классов ООП

Существует несколько видов работников: программист, дизайнер, тестировщик, менеджерЕсть разные виды работ: 1) писать код, 2) тестировать код,...

101
Сериализовать объекты класса в json формат

Сериализовать объекты класса в json формат

Прошу подсказать по учебной задаче

101
Как поправить условия

Как поправить условия

Подскажите как правильно подправить условия? сейчас при заходе на страницу браузер выдает ошибку HTTP ERROR 500

155