Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Pokaż ładowanie obrazu podczas wykonywania PHP

W większości przypadków zrobiłbyś mają dwie strony. Pierwsza strona, po stronie klienta, wywołuje inną stronę po stronie serwera i pokazuje całkiem kręcące się rzeczy podczas oczekiwania. Po zakończeniu ładowania strony po stronie serwera (po zakończeniu zapytania) Twoja pierwsza strona otrzymuje odpowiedź, a następnie możesz ukryć to całkiem kręcące się rzeczy, aby poinformować użytkownika, że ​​to już koniec.

Możesz użyć AJAX - w czystym JavaScript lub dużo prostszym w jQuery - do dynamicznego ładowania niektórych danych ze swojej strony PHP i pokazywania obracającego się elementu podczas oczekiwania. Użyłem tutaj jQuery.

CSS

#loading_spinner { display:none; }

HTML

<img id="loading_spinner" src="loading-spinner.gif">

<div class="my_update_panel"></div>

jQuery

$('#loading_spinner').show();

var post_data = "my_variable="+my_variable;
$.ajax({
    url: 'ajax/my_php_page.php',
    type: 'POST',
    data: post_data,
    dataType: 'html',
    success: function(data) {
        $('.my_update_panel').html(data);
//Moved the hide event so it waits to run until the prior event completes
//It hide the spinner immediately, without waiting, until I moved it here
        $('#loading_spinner').hide();
    },
    error: function() {
        alert("Something went wrong!");
    }
});

PHP (my_php_page.php)

<?php
// if this page was not called by AJAX, die
if (!$_SERVER['HTTP_X_REQUESTED_WITH'] == 'XMLHttpRequest') die('Invalid request');

// get variable sent from client-side page
$my_variable = isset($_POST['my_variable']) ? strip_tags($_POST['my_variable']) :null;

//run some queries, printing some kind of result
$SQL = "SELECT * FROM myTable";
// echo results
?>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL, brakujący koniec, ale dlaczego?

  2. Sortuj wiersze bazy danych o wartości 0 po wierszach niezerowych

  3. Czy to wystarczy na bezpieczną witrynę? (4 małe funkcje)

  4. Zapytanie SQL wielu wartości w jednej komórce

  5. Jak tymczasowo ustawić MySQL w trybie tylko do odczytu za pomocą wiersza poleceń?