0

Пытаюсь добавить данные через скрипт, но данные добавляются только в админке...

Суть в том, что подключение одинаковое и в консоле код 200. данные передаются, о почему-то не пишутся в БД... Уже голову сломал, не пойму что не так. В админке сохраняются, а через через юзера на сайте, когда тот добавляет - нет.

<select class="basic-multiple"  data-rule="required" name="carType" id="carType" onchange='onCategoryChange(this);document.getElementById("carType2").value=this.options[this.selectedIndex].text'>
<option value="">--- тип---</option>
<option value="1">мини авто</option>
</select>

<select class="basic-multiple" data-rule="required" name="carMark" id="carMark" onchange='document.getElementById("carMark2").value=this.options[this.selectedIndex].text'> <option value="">--- marka ---</option> </select>

<select class="basic-multiple" data-rule="required" name="carModel" id="carModel" onchange='document.getElementById("carModel2").value=this.options[this.selectedIndex].text'> <option value="">--- model ---</option> </select>

<input type="text" name="carType2" id="carType2" class="hidden" > <input type="text" name="carMark2" id="carMark2" class="hidden"> <input type="text" name="carModel2" id="carModel2" class="hidden">

(function($){
    $(document).ready(function(){
        getTypes();

        $('#carEquipment').change(function(){
            getData();
        });

        $('#carModification').change(function(){
            getData();
            getEquipment();
        });

        $('#carSerie').change(function(){
            getModification();
        });

        $('#carGeneration').change(function(){
            getSerie();
        });

        $('#carModel').change(function(){
            getGeneration();
        });

        $('#carMark').change(function(){
            getModel();
        });

        $('#carType').change(function(){
            getMark();
        });

        function getData(){
            var equipment = $('#carEquipment').val();
            var modification = $('#carModification').val();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_params=1&equipment='+equipment+'&modification='+modification,
                dataType: "json"
            });

            request.done(function(data){
                var characteristics = '';
                var options = '';

                if(data.characteristic.length){
                    for(var i = 0, max = data.characteristic.length; i < max; i++){
                        var unit = data.characteristic[i].unit ? data.characteristic[i].unit : '';

                        characteristics += '<div class="row">'+
                                                '<div class="col-sm-6">'+data.characteristic[i].name+'</div>'+
                                                '<div class="col-sm-6">'+data.characteristic[i].value+' '+unit+'</div>'+
                                            '</div>';
                    }

                    $('#carCharValue').html(characteristics);
                }

                if(data.option.length){
                    for(var i = 0, max = data.option.length; i < max; i++){
                        options += '<div class="row">'+
                                        '<div class="col-sm-6">'+data.option[i].name+'</div>'+
                                        '<div class="col-sm-6">'+data.option[i].value+'</div>'+
                                    '</div>';
                    }

                    $('#carOptionValue').html(options);

                }
            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getEquipment(){
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var equipment = $('#carModification').val();

            if(equipment == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_equipment='+equipment,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option price_min="'+data[i].price_min+'" year="'+data[i].year+'" date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carEquipment').append(opt);

            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getModification(){
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var modification = $('#carSerie').val();

            if(modification == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_modification='+modification,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carModification').append(opt);

            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getSerie(){
            $('#carSerie option').not(':first').remove();
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var serie = $('#carGeneration').val();

            if(serie == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_serie='+serie,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carSerie').append(opt);
              ч
            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getGeneration(){
            $('#carGeneration option').not(':first').remove();
            $('#carSerie option').not(':first').remove();
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var generation = $('#carModel').val();

            if(generation == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_generation='+generation,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option year_begin="'+data[i].year_begin+'" year_end="'+data[i].year_end+'" date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carGeneration').append(opt);

            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getModel(){
            $('#carModel option').not(':first').remove();
            $('#carGeneration option').not(':first').remove();
            $('#carSerie option').not(':first').remove();
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var model = $('#carMark').val();

            if(model == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_model='+model,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carModel').append(opt);

            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getMark(){
            $('#carMark option').not(':first').remove();
            $('#carModel option').not(':first').remove();
            $('#carGeneration option').not(':first').remove();
            $('#carSerie option').not(':first').remove();
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var mark = $('#carType').val();

            if(mark == '')
                return false;

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_mark='+mark,
                dataType: "json"
            });

            request.done(function(data){
                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option date_create="'+data[i].date_create+'" date_update="'+data[i].date_update+'" value="'+data[i].id+'">'+data[i].name+'</option>';
                }

                $('#carMark').append(opt);

            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });
        }

        function getTypes(){
            $('#carType option').not(':first').remove();
            $('#carMark option').not(':first').remove();
            $('#carModel option').not(':first').remove();
            $('#carGeneration option').not(':first').remove();
            $('#carSerie option').not(':first').remove();
            $('#carModification option').not(':first').remove();
            $('#carEquipment option').not(':first').remove();
            $('#carCharValue').html('-');
            $('#carOptionValue').html('-');

            var request = $.ajax({
                url: "engine/ajax/testar.php",
                method: "POST",
                data: 'get_types=1',
                dataType: "json"
            });

            request.done(function(data){






                var opt = '';

                for(var i = 0, max = data.length; i < max; i++){
                    opt += '<option value="'+data[i].id+'">'+data[i].name+'</option>';
                }


                $('#carType').append(opt);




            });

            request.fail(function(jqXHR, textStatus){
                alert('Request failed: '+textStatus);
            });

        }
    });

})(jQuery);
<?php
// Подключение к базе данных (замените значения на ваши)
$servername = "localhost";
$username = "111";
$password = "222";
$dbname = "111";

// Создание соединения с базой данных
$db = new mysqli($servername, $username, $password, $dbname);

// Проверка соединения
if ($db->connect_error) {
    die("Connection failed: " . $db->connect_error);
}

//Вид транспорта
if(isset($_POST['get_types'])){
    $out = array();
    $sql = "SELECT * FROM `car_type` ORDER BY `id_car_type` ASC ";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_type,
            'name' => $row->name
        );
    }
    echo json_encode($out);
}

//Марка
if(isset($_POST['get_mark'])){
    $type = (int)$_POST['get_mark'] ? (int)$_POST['get_mark'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_mark` WHERE `id_car_type` = '$type'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_mark,
            'name' => $row->name,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update,
            'name_rus' => $row->name_rus
        );
    }
    echo json_encode($out);
}

//Модель
if(isset($_POST['get_model'])){
    $mark = (int)$_POST['get_model'] ? (int)$_POST['get_model'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_model` WHERE `id_car_mark` = '$mark'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_model,
            'name' => $row->name,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update,
            'name_rus' => $row->name_rus
        );
    }
    echo json_encode($out);
}

//Поколение
if(isset($_POST['get_generation'])){
    $model = (int)$_POST['get_generation'] ? (int)$_POST['get_generation'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_generation` WHERE `id_car_model` = '$model'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_generation,
            'name' => $row->name,
            'year_begin' => $row->year_begin,
            'year_end' => $row->year_end,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update
        );
    }
    echo json_encode($out);
}

//Серия
if(isset($_POST['get_serie'])){
    $generation = (int)$_POST['get_serie'] ? (int)$_POST['get_serie'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_serie` WHERE `id_car_generation` = '$generation'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_serie,
            'name' => $row->name,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update
        );
    }
    echo json_encode($out);
}

//Модификация
if(isset($_POST['get_modification'])){
    $serie = (int)$_POST['get_modification'] ? (int)$_POST['get_modification'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_modification` WHERE `id_car_serie` = '$serie'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_modification,
            'name' => $row->name,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update
        );
    }
    echo json_encode($out);
}

//Комплектация
if(isset($_POST['get_equipment'])){
    $modification = (int)$_POST['get_equipment'] ? (int)$_POST['get_equipment'] : 0;
    $out = array();
    $sql = "SELECT * FROM `car_equipment` WHERE `id_car_modification` = '$modification'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out[] = array(
            'id' => $row->id_car_equipment,
            'name' => $row->name,
            'date_create' => $row->date_create,
            'date_update' => $row->date_update,
            'price_min' => $row->price_min,
            'year' => $row->year
        );
    }
    echo json_encode($out);
}

//Характеристики
if(isset($_POST['get_params'])){
    $equipment = (int)$_POST['equipment'] ? (int)$_POST['equipment'] : 0;
    $modification = (int)$_POST['modification'] ? (int)$_POST['modification'] : 0;
    $out = array();

    $sql = "SELECT * FROM `car_characteristic_value` 
    LEFT JOIN `car_characteristic` ON `car_characteristic_value`.`id_car_characteristic` = `car_characteristic`.`id_car_characteristic` 
    WHERE `id_car_modification` = '$modification'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out['characteristic'][] = array(
            'name' => $row->name,
            'value' => $row->value,
            'unit' => $row->unit
        );
    }

    $sql = "SELECT * FROM `car_option_value` 
    LEFT JOIN `car_option` ON `car_option_value`.`id_car_option` = `car_option`.`id_car_option` 
    WHERE `id_car_equipment` = '$equipment'";
    $res = $db->query($sql) or die(mysqli_error($db));
    while($row = mysqli_fetch_object($res)){
        $out['option'][] = array(
            'name' => $row->name,
            'value' => $row->is_base ? 'стандартная' : 'дополнительная',
        );
    }

    echo json_encode($out);
}

$db->close();


?>
  • Если прилетает статус 200 и возвращаются данные, то нужно смотреть отладчиком что происходит в коде.... Если проблемы на серверной стороне - то надо отладку проводить на той стороне ...плюс включать там отображение ошибок – Алексей Шиманский Feb 23 '24 at 06:42

0 Answers0