Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [upload] Informacja "wysyłanie pliku w toku"
Forum PHP.pl > Forum > Po stronie przeglądarki > JavaScript
molecular
Mam stronkę opartą na php/mysql, posiada ona możliwość wysyłania plików na serwer dla zalogowanych użytkowników, chciałbym aby w trakcie wysyłania pliku na serwer pojawiała się informacja w stylu "trwa wysyłanie plików na serwer" po czym miałaby ona zginąć gdy plik zostanie wysłany. Myślę że możnaby to zrobić w javascripcie, który sprawdzałby czy plik o podanej nazwie jest na serwerze i wówczas wyświetlałby taką informację. Nie interesuje mnie procent postępu tylko sama informacja.

Ma ktoś jakiś pomysł?
kwiateusz
sam komunikat bez sprawdzania to raptem odkrycie diva i zakrycie, a ze sprawdzaniem to już domieszka ajaxa...
molecular
no właśnie się zastanawiałem czy lepszy jest div ukryty i następnie jego odsłonięcie przez java script czy nowe okienko, ale okienko może zostać zablokowane... fakt

tylko już dawno nie zajmowałem się js i mi trochę umknęło a jabym chciał żeby w trakcie uploadowania inf była wyświetlana a po wysłaniu już nie tylko nie pamiętam jak najlepiej zrobić w js żeby skrypt sprawdzał, czyżby setTimeOut i zapętlenie?
kwiateusz
i div sie lepiej prezentuje na stronie niż denerwujące okno które wyskakuje smile.gif
emacieka
Może być coś takiego. Już ładnie wystylowane, bynajmniej wg. mnie winksmiley.jpg

Kod
<style>
div.UploadDiv
{
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;

}

div.UploadDivBackground
{
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background-color: #000000;
    filter: Alpha(Opacity=30);
    -moz-opacity: 0.3;
    opacity: 0.3;
}

div.UploadDivContent
{
    position: absolute;
    left: 50%;
    top: 50%;
    padding: 5px;
    margin-left: -250px;
    margin-top: -50px;
    z-index: 2;
}

table.UploadTable
{
    width: 500px;
    height: 100px;
    background: #FFFFFF;
    border: 1px solid #000000;
}
</style>

    <a name="UploadInfo"></a>
    <div id="UploadDiv" class="UploadDiv" style="display: none;">
        <div class="UploadDivBackground"></div>
        <div class="UploadDivContent">
            <table class="UploadTable">
            <tr height="30">
                <td style="font-size: 12px; font-weight: bold; text-align: center">Proszę czekać, trwa przesyłanie danych...</td>
            </tr>
            <tr>
                <td style="font-size: 10px; text-align: justify">
                Nie zamykaj okna przeglądarki. W zależności od rozmiaru wysyłanych plików oraz szybkości połączenia z Internetem przesyłanie danych może potrwać nawet kilka minut.<br /><br />
                <a href="jakis_link_np_do_poprzedniej_strony">Przerwij wysyłanie plików.</a>
                </td>
            </tr>
            </table>
        </div>
    </div>


<form onSubmit="document.getElementById('UploadDiv').style.display = ''; location.href = '#UploadInfo'">
<input type="submit" />
</form>


Kody js w form możesz sobie np wrzucić do jakieś funkcji:
Kod
function show_div(id, mode) {
    var obj = document.getElementById(id);

    obj.style.display = mode ? "" : "none";
}
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.