Jquery Ajax Post, но ожидаемый код PHP не работает - PullRequest
0 голосов
/ 12 октября 2019

Я пытаюсь настроить простую веб-страницу на локальном сервере. На этой веб-странице есть кнопка, и когда она будет нажата на локальном клиенте, я ожидаю, что на сервере будет создан каталог. PHP запускается на стороне сервера, а jquery - на стороне клиента.

Мой PHP-код в test.php: <?php mkdir('/home/pablo/test_dir', 0777, true); ?>

jquery / ajax в script.js:

var toggleOutlet = function(buttonClicked) {
    $.ajax({
        url: 'test.php',
        success: function(data) {
            alert('Directory created!');
        }
    });
};
$(function() {
    $('.toggleOutlet').click(function() {
        toggleOutlet($(this));
    });
});

Когда я нажимаю кнопку на клиенте, я получаю «Каталог создан!»сигнал тревоги, но на сервере не создано ни одного test_dir. Что я делаю неправильно?? Для полноты, мой HTML-код:

<!DOCTYPE html>
<html>
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>MyWeb</title>
  <link rel="stylesheet" href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
</head>

<body>

  <div class="container">
    <label>Example Button</label>
    <div class="btn-group btn-group-justified" role="group" aria-label="...">
      <div class="btn-group" role="group">
        <button type="button" data-outletId="1" data-outletStatus="on" class="btn btn-default toggleOutlet">On</button>
      </div>
    </div>

  </div>
</body>
<script src="//code.jquery.com/jquery-3.2.0.min.js"></script>
<script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<script src="script.js"></script>
</html>

1 Ответ

0 голосов
/ 12 октября 2019

Hello @ pablo919. Вам нужно проверить, есть ли у каталога "/ home / pablo" разрешения на запись, иначе вы можете изменить код ajax и добавить функцию error для проверки того, что есть.

Пример:

$.ajax({
        url: 'test.php',
        success: function(data) {
            alert('Directory created!');
        },
        error: function (jqXHR, exception) {
                alert('Uncaught Error.\n' + jqXHR.responseText);
        }

    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...