Pagina 3 di 4 primaprima 1 2 3 4 ultimoultimo
Visualizzazione dei risultati da 21 a 30 su 35
  1. #21
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Originariamente inviato da Teuzzo
    Era proprio come avevo detto, la tabella bloccava l'output su Explorer.
    Ora fa proprio come volevo io.
    Per chi fosse interessato a questa cosa post un esempio:

    codice:
    ob_start();
    for( $i=0; $i<1000; $i++ ){
    ... molte operazioni
    echo '
    Riga ',$i;
    ob_flush(); 
    flush();
    }
    Se ci sono tabelle o div, Internet Explorer non le stampa a video fino a quando i tag sono chiusi, quindi se vi serve una cosa del genere non usate le tabelle e i div.
    Ma avete letto il post che ho quotato? Il problema l'ho risolto 15 post fa, non capisco perchè continuate a dirmi quello che devo fare e a spiegarmi quello che già so, se l'ho già fatto e funziona tutto perfettamente.
    Riassumo per evitare inutili incomprensioni:

    1) il mio script (che non ho pubblicato, quindi nessuno sa cosa fa e come lo fa) deve eseguire molte operazioni, per cui se l'input è di grandi dimensioni il server impiega diversi secondi. E questo senza l'uso delle ob_, che quindi non centrano con la lentezza dello script. Il problema non era il mio script ma la stampa di alcune informazioni durante la sua esecuzione.
    2) il problema della stampa di informazioni durante l'esecuzione dello script l'ho risolto togliendo i tag html <table>, come suggerito nel sito php.net.

    Un'ultima cosa per rispondere a Daniele: se io metto le funzioni ob_ all'inizio e alla fine, come faccio a stampare l'output durante l'esecuzione? Ci sono esempi su php.net come il mio, quindi non capisco cosa ci sia di sbagliato. Tra l'altro fuziona perfettamente senza errori (E_ALL) e con gli stessi tempi dello script senza le ob_.

  2. #22
    Originariamente inviato da Teuzzo
    1) il mio script deve eseguire molte operazioni, per cui se l'input è di grandi dimensioni il server impiega diversi secondi. E questo senza l'uso delle ob_
    allora vedi che un po' di "sfera di cristallo" l'abbiamo ?

    se vuoi provare ad ottimizzare anche lo script (secondi per uno script non vanno bene, c'e' qualcosa da migliorare, imho), a prescindere dalle ob_*, posta il codice, sennò buon per te
    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  3. #23
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Originariamente inviato da andr3a
    allora vedi che un po' di "sfera di cristallo" l'abbiamo ?

    se vuoi provare ad ottimizzare anche lo script (secondi per uno script non vanno bene, c'e' qualcosa da migliorare, imho), a prescindere dalle ob_*, posta il codice, sennò buon per te
    Sei hai un paio di settimane di tempo, mi prendo le ferie e ti spiego cosa fa il programma.

  4. #24
    Io ho un problema analogo!
    Ho uno script che invia MIGLIAIA di SMS (tutti diversi!!!) attraverso una connessione socket ad un gateway. Ovviamente ogni invio ha un tempo di risposta (dipendente dal gateway e dal suo affollamento suppongo!) e la risposta mi piacerebbe stamparla a video man mano che arriva!
    Di solito lo script complessivamente ci mette svariati secondi per terminare (sono MIGLIAIA di SMS con numero e testo differente!), ma non più di 10! Tuttavia comprendo che il problema di Teuzzo sia reale e non dovuto ad un errore, perché la complessità di tempo di un algoritmo potrebbe non dipendere solo dall'algoritmo in esame...

    Non so se è corretto quello che ho detto, ma spero mi abbiate compreso!

    In breve: grazie Teuzzo! Hai posto un interessante problema e postato la soluzione da te trovata!
    Salvatore De Bonis AKA Novice of Ricotta AKA NashCrash

  5. #25
    ti basta mettere dei normalissimi echo, usando dei div per ogni riga, e poi, tramite flush, invii tutto

    se sei pratico puoi anche implementare una barra di scorrimento tramite JS e sempre tramite degli echo e flush stampi fuori il javascript che fa la progressione
    The fastest Redis alternative ... cachegrand! https://github.com/danielealbano/cachegrand

  6. #26
    Originariamente inviato da NoR
    Io ho un problema analogo!
    Ho uno script che invia MIGLIAIA di SMS (tutti diversi!!!) attraverso una connessione socket ad un gateway
    il problema non è affatto analogo poichè non si tratta di uno script che impiega secondi ma si tratta di una connessione remota su gateway dedicato all' invio di SMS ... dove non è lo script ad essere lento, ma appunto, il gateway.

    Nel tuo caso ti consiglio di operare in modo asincrono (crontab strutturato a dovere) o di dividere le operazioni da fare sul gateway (non dargli in pasto 1.000 sms alla volta ma solo 100 o massimo 500, di volta in volta) al fine di evitare casini assoluti (duplicati, invii non desiderati, malfunzionamenti) abbastanza frequenti in questo tipo di applicazioni ( non sei l'unico ad avere questo problema, sempre che tu ce l'abbia ... se la cosa può consolarti, ne ho risolte già un paio di situazioni analoghe quindi deduco ce ne siano tante altre ).

    Formaldehyde a new Ajax PHP Zero Config Error Debugger

    WebReflection @WebReflection

  7. #27
    io ho un problema simile
    il mio script fa delle query in una connessione odbc di un database molto grosso e strutturato male (ma così me lo ha dato il cliente)
    vorrei che durante lo script (che fa le query e popola un array) appaia la classica scritta "attendere prego..."
    ho provato con flush e compagnia, funziona, ma sembra poi non sentire

    header("location: http://www.xxx.it/database/browse.php");


    può essere?

    viva

  8. #28
    nessuno mi sa dare qualche consiglio?



    viva

  9. #29
    Utente di HTML.it L'avatar di Teuzzo
    Registrato dal
    Mar 2002
    Messaggi
    969
    Non possono essere mandati header se prima mandi output al browser.

  10. #30
    quindi come faccio a fare una redirectory dopo una elaborazione?

    viva

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.