Ответы пользователя по тегу HTML
  • Не отображается echo из-за ajax запроса?

    @ynChrome
    Ну как бы текст echo отображается, да вот только ничто этот ответ не читает. А надо, чтобы читало.
    Да, вы правы, дело в AJAX. JS сходил, постучал по вашему URL, закинул туда файл, и на этом его работа закончилась.
    Чтобы не закончилась, а что-то куда-то вывести, надо дописывать JS. Например, так:

    $.ajax({
          xhr : function() {
            var xhr = new window.XMLHttpRequest();
    
            xhr.upload.addEventListener('progress', function(e) {
    
              if (e.lengthComputable) {
    
                console.log('Bytes Loaded: ' + e.loaded);
                console.log('Total Size: ' + e.total);
                console.log('Percentage Uploaded: ' + (e.loaded / e.total))
    
                var percent = Math.round((e.loaded / e.total) * 100);
    
                $('#progressBar').attr('aria-valuenow', percent).css('width', percent + '%').text(percent + '%');
    
              }
    
            });
    
            return xhr;
          },
          type : 'POST',
          url : '/union.php',
          data : formData,
          processData : false,
          contentType : false,
          // В response будет то, что вывел echo
          success: doSmth(response) // <-- Вот тут. Можно и анонимную функцию сделать, это не критично
        });
    
    // Чтобы не усложнять
    function doSmth(responseData) {
        // ...
        // ...
        console.log(responseData);
        // ...
    }
    Ответ написан
    Комментировать