Ajax не работает с перезаписью .htaccess - PullRequest
0 голосов
/ 10 января 2020

У меня есть скрипт для календаря, но кажется, что когда я хочу отправить данные через ajax, я получаю parsererror, потому что я изменил URL через htaccess. Я поместил код в тестовый проект без изменения URL-адреса, и он работает, как я могу изменить код, чтобы он принимал больше параметров для страницы «filme». Я заметил, что не входит в «успех», но данные добавляются в базу данных

.htaccess

RewriteEngine On

RewriteRule ^([a-zA-z0-9-]+)(\/)?(?(2)([0-9]+))$ index.php?pag=$1&id=$3 [NC,L]

# To externally redirect /dir/foo.php to /dir/foo
RewriteCond %{THE_REQUEST} ^[A-Z]{3,}\s([^.]+)\.php [NC]
RewriteRule ^ %1 [R,L,NC]

## To internally redirect /dir/foo to /dir/foo.php
RewriteCond %{REQUEST_FILENAME}.php -f [NC]
RewriteRule ^ %{REQUEST_URI}.php [L]

index. php

<?php

    if(isset($_GET['pag']))
        switch($_GET['pag']){
            case ($_GET['pag'] == 'index'):
                include('pages/acasa.php');
                break;

            case 'filme':
                include('pages/filme.php');
                break;

            default:
                include('pages/eroare.php');
                break;
        }
    else
        include('pages/acasa.php');

?>

ajax

function doSubmit() {
    $("#createEventModal").modal('hide');
    var title = $('#title').val();
    var startTime = $('#startTime').val();
    var endTime = $('#endTime').val();

    $.ajax({
        url: 'pages/filme.php',
        data: 'action=add&title=' + title + '&start=' + startTime + '&end=' + endTime,
        type: "POST",
        success: function(json) {
            $("#calendar").fullCalendar('renderEvent', {
                    id: json.id,
                    title: title,
                    start: startTime,
                    end: endTime,
                },
                true);
        }
    });

}

php код

if($_POST['action'] == "add")
    {
        mysqli_query($con, "INSERT INTO `filme` (
                    `title` ,
                    `start` ,
                    `end`
                    )
                    VALUES (
                    '".mysqli_real_escape_string($con, $_POST["title"])."',
                    '".mysqli_real_escape_string($con, date('Y-m-d H:i:s',strtotime($_POST["start"])))."',
                    '".mysqli_real_escape_string($con, date('Y-m-d H:i:s',strtotime($_POST["end"])))."'
                    )");
        header('Content-Type: application/json');

         echo '{"id":"'.mysqli_insert_id($con).'"}';
        exit;
    }

Полный код

filme.php : https://pastebin.com/B8Cu4rRX
script.js : https://pastebin.com/gtR3SwSP
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...