Salta al contenuto
  • Categorie
  • Recenti
  • Tag
  • Popolare
  • Utenti
  • Gruppi
Collassa
Logo del marchio
  1. Home
  2. Coding e customizzazione (PHP, HTML, CSS)
  3. [risolto] accesso casuale e cache

[risolto] accesso casuale e cache

Pianificato Fissato Bloccato Spostato Coding e customizzazione (PHP, HTML, CSS)
22 Post 4 Autori 301 Visualizzazioni
  • Da Vecchi a Nuovi
  • Da Nuovi a Vecchi
  • Più Voti
Effettua l'accesso per rispondere
Questa discussione è stata eliminata. Solo gli utenti con diritti di gestione possono vederla.
  • jabbaJ Non in linea
    jabbaJ Non in linea
    jabba
    scritto su ultima modifica di
    #3

    La cache purtroppo (o per fortuna) fa esattamente questo: prende una pagina già processata e te la spara così com'è salvata, proprio per evitare di dover "rigenerare" tutto quanto ogni volta.
    Valuta se togliere la cache su determinate pagine (oppure se gestisci il player con un modulo di togliere la cache per quello specifico modulo)

    Gianluca Gabella - smanettone IT, webbarolo, Joomler per passione - pixed.it

    1 Risposta Ultima Risposta
    0
    • K Non in linea
      K Non in linea
      kippo
      scritto su ultima modifica di
      #4

      la cache di joomla gia' e' off
      il problema e' quella del browser (non il mio quello di chi ascolta)
      per questo chiedo se e' possibile forzare il load page da php anche con cache attiva

      Ascolta RadioVampira ti resuscita

      jabbaJ 1 Risposta Ultima Risposta
      0
      • pstradaP Non in linea
        pstradaP Non in linea
        pietro strada
        scritto su ultima modifica di
        #5

        sei sicur che non hai la cache di pagina abilitata?

        Puoi trovarmi su: geniodelweb.it

        K 1 Risposta Ultima Risposta
        0
        • jabbaJ Non in linea
          jabbaJ Non in linea
          jabba
          risposto a kippo su ultima modifica di
          #6

          @kippo ha detto in accesso casuale e cache:

          il problema e' quella del browser (non il mio quello di chi ascolta)

          Mi sembra strano perché la cache del browser fa cache solo di risorse statiche (file JavaScript, file css, immagini ecc...) non fa cache degli output (altrimenti non funzionerebbe nessuno sito perché i contenuti non si potrebbero gestire da server visto che sarebbero in cache sul client).
          Se il risultato del tuo "random" è sempre lo stesso probabilmente la cache è sul sito (cache di Joomla) o sul server (redis, fastcache, o simili...)

          Gianluca Gabella - smanettone IT, webbarolo, Joomler per passione - pixed.it

          1 Risposta Ultima Risposta
          0
          • K Non in linea
            K Non in linea
            kippo
            risposto a pietro strada su ultima modifica di
            #7

            @pstrada ha detto in accesso casuale e cache:

            sei sicur che non hai la cache di pagina abilitata?

            si
            Istantanea_2025-06-06_23-27-49.png

            @jabba ha detto in accesso casuale e cache:

            Mi sembra strano perché la cache del browser fa cache solo di risorse statiche (file JavaScript, file css, immagini ecc...) non fa cache degli output (altrimenti non funzionerebbe nessuno sito perché i contenuti non si potrebbero gestire da server visto che sarebbero in cache sul client).
            Se il risultato del tuo "random" è sempre lo stesso probabilmente la cache è sul sito (cache di Joomla) o sul server (redis, fastcache, o simili...)

            ok non sapevo scusate l'ignoranza, allora va bene cosi'
            cmq non e' che il random e' sempre uguale e' che insiste su alcuni pezzi e ne tralascia altri e mi era sembrato che pulendo la cache la cosa migliorasse da qui il dubbio
            ok metto risolto
            grazie

            Ascolta RadioVampira ti resuscita

            1 Risposta Ultima Risposta
            0
            • K Non in linea
              K Non in linea
              kippo
              scritto ultima modifica di
              #8

              riesumo il post per dire che grazie a luX0r75 abbiamo sistemato la cosa, in pratica il problema era l'attributo preload del tag <audio> che per default non sta a none come io credevo ma ad altri valori (dipende dal browser)
              cosicche' avveniva cmq un precaricamento dalla cache che rovinava l'accesso random
              ora avendo messo preload="none"
              tutto va bene
              grazie di nuovo a luX0r75 ed a tutti quelli che ci hanno sbattuto la capa insieme a me

              Ascolta RadioVampira ti resuscita

              1 Risposta Ultima Risposta
              1
              • luX0r75L Non in linea
                luX0r75L Non in linea
                luX0r75
                scritto ultima modifica di
                #9

                Ciao.
                Felice che tu abbia risolto disabilitando il preload.
                Avevo comunque un'altra soluzione pronta 😁

                https://www.htmlcrusco.it

                1 Risposta Ultima Risposta
                0
                • K Non in linea
                  K Non in linea
                  kippo
                  scritto ultima modifica di
                  #10

                  @luX0r75 se vuoi diccela che la provo cmq
                  anche perche' gli esperimenti non sono finiti , anzi...
                  per es. la prox cosa che faro' e' togliere il mix lista su JS
                  ora che funge mi sembra uno spreco di codice e risorse
                  saluti

                  Ascolta RadioVampira ti resuscita

                  1 Risposta Ultima Risposta
                  0
                  • luX0r75L Non in linea
                    luX0r75L Non in linea
                    luX0r75
                    scritto ultima modifica di
                    #11

                    Sì, sono d'accordo, fai tutto server side.

                    Quando crei il tag <audio> in PHP, aggiungi al nome del file che utilizzi nel <source> un uniqid().
                    Del tipo:

                    <?php
                    echo '<audio preload="none"><source src="nome-del-file.mp3?v='.uniqid().'"></audio>
                    ?>
                    

                    https://www.htmlcrusco.it

                    1 Risposta Ultima Risposta
                    0
                    • K Non in linea
                      K Non in linea
                      kippo
                      scritto ultima modifica di
                      #12

                      attualmente il source lato server e' vuoto:
                      <audio id="rvAudio" preload="none">
                      <source src="">
                      </audio>
                      cosa dovrei fare, una cosa tipo <source src="".uniqid()> ?

                      Ascolta RadioVampira ti resuscita

                      1 Risposta Ultima Risposta
                      0
                      • luX0r75L Non in linea
                        luX0r75L Non in linea
                        luX0r75
                        scritto ultima modifica di
                        #13

                        Scrivi qui il javascript che usi per valorizzare l'attributo src...

                        https://www.htmlcrusco.it

                        1 Risposta Ultima Risposta
                        0
                        • K Non in linea
                          K Non in linea
                          kippo
                          scritto ultima modifica di
                          #14
                          if (brc == '') {
                          	r=Math.floor((Math.random()*l));
                          	track = arr[r];
                          	arr.splice(r,1);
                          	l=arr.length;
                          	if (l == 0) {
                          		arr=ooo.slice();
                          	}
                          	audioPlayer.src = jjj[track];
                          	title = audioPlayer.src;
                          } else {
                          	audioPlayer.src = brc;
                          	title = brc;
                          	brc = '';
                          }
                          

                          Ascolta RadioVampira ti resuscita

                          1 Risposta Ultima Risposta
                          0
                          • luX0r75L Non in linea
                            luX0r75L Non in linea
                            luX0r75
                            scritto ultima modifica di luX0r75
                            #15

                            Non so cosa sia brc. Se lo ritieni necessario aggiungi la modifica anche nell'else.

                            if (brc == '') {
                            	r=Math.floor((Math.random()*l));
                            	track = arr[r];
                            	arr.splice(r,1);
                            	l=arr.length;
                            	if (l == 0) {
                            		arr=ooo.slice();
                            	}
                                    // MODIFICA: aggiunto Unix epoch time al nome del file
                                    title = jjj[track];
                                    uniqid = new Date().getTime();
                                    audioPlayer.src = title + '?v=' + uniqid;
                            } else {
                            	audioPlayer.src = brc;
                            	title = brc;
                            	brc = '';
                            }
                            

                            https://www.htmlcrusco.it

                            1 Risposta Ultima Risposta
                            0
                            • K Non in linea
                              K Non in linea
                              kippo
                              scritto ultima modifica di
                              #16

                              brc e' l'eventuale titolo gia' pronto che viene dal tasto "cerca brano" quindi non ci interessa
                              mi stai dicendo che devo mettere un codice casuale sia lato server, sia lato client?
                              ok provo

                              Ascolta RadioVampira ti resuscita

                              luX0r75L 1 Risposta Ultima Risposta
                              0
                              • luX0r75L Non in linea
                                luX0r75L Non in linea
                                luX0r75
                                risposto a kippo ultima modifica di luX0r75
                                #17

                                @kippo No, solo lato client!
                                Non è un codice casuale, è il numero di millisecondi passati dal 1970, quindi per il tuo caso è alla stregua di un ID univoco.

                                https://www.htmlcrusco.it

                                1 Risposta Ultima Risposta
                                0
                                • K Non in linea
                                  K Non in linea
                                  kippo
                                  scritto ultima modifica di
                                  #18

                                  ok funziona anche il 2° metodo, ma preferisco il 1°
                                  ora un paio di curiosita' finali:

                                  • il 2° metodo come fa a matchare il nome file? cioe' se io ho pippo.mp3 come fa a suonare pippo+IDunivoco.mp3?
                                  • perche' non funzionava senza preload="none"? ok veniva fatto un precarico ma che significa questo che venivano ripetuti i numeri random?
                                    grazie

                                  Ascolta RadioVampira ti resuscita

                                  1 Risposta Ultima Risposta
                                  0
                                  • luX0r75L Non in linea
                                    luX0r75L Non in linea
                                    luX0r75
                                    scritto ultima modifica di
                                    #19

                                    Il nome del file è sempre quello, cambia la query string sull'URL (?v=idunivoco).

                                    La cache del browser non può agire sui contenuti delle variabili in memoria, ma solo su quelle dello storage locale (vedi cookie).
                                    In generale non interpreta gli script ma si limita a fare il caching della risposta in HTML e delle eventuali risorse statiche esterne (js, css, immagini, video).

                                    Se il player audio html prevede l'impostazione di preload, è probabile che memorizzi qualcosa nello storage locale.
                                    Il tuo codice php restituisce un HTML privo di file audio, perché quest'ultimo viene caricato successivamente al caricamento della pagina tramite JS.
                                    Questo metodo crea pagine HTML che sono tutte uguali e quindi il browser non trovando differenze con la versione memorizzata nello storage locale, tende a caricare le risorse che trova nella cache.

                                    Per esserne sicuri bisognerebbe vedere l'algoritmo di cache del browser, ma se con preload="none" funziona, allora molto probabilmente è così.

                                    Puoi fare anche un'altra prova.
                                    Lato PHP fai restituire il tag <audio> già con un file random impostato... solo il primo, poi gli altri puoi continuare a gestirli con JS.
                                    Con il file già impostato, l'HTML restituito varia perché cambia il nome del file. Di conseguenza il ricorso alla cache dovrebbe avvenire solo se il nome del file è uguale a quello già in cache.

                                    https://www.htmlcrusco.it

                                    1 Risposta Ultima Risposta
                                    1
                                    • K Non in linea
                                      K Non in linea
                                      kippo
                                      scritto ultima modifica di
                                      #20

                                      grazie mille per la pazienza, la competenza e la disponibilita' dimostrati
                                      alla prox

                                      Ascolta RadioVampira ti resuscita

                                      1 Risposta Ultima Risposta
                                      1
                                      • luX0r75L Non in linea
                                        luX0r75L Non in linea
                                        luX0r75
                                        scritto ultima modifica di
                                        #21

                                        Ti ho inviato fattura elettronica 🙂

                                        Ciao, ciao

                                        https://www.htmlcrusco.it

                                        1 Risposta Ultima Risposta
                                        0
                                        • K Non in linea
                                          K Non in linea
                                          kippo
                                          scritto ultima modifica di
                                          #22

                                          ah beh allora
                                          non ascoltate ein brutto capellonen

                                          Ascolta RadioVampira ti resuscita

                                          1 Risposta Ultima Risposta
                                          0

                                          • Accedi

                                          • Non hai un account? Registrati

                                          • Accedi o registrati per effettuare la ricerca.
                                          Powered by NodeBB Contributors
                                          • Primo post
                                            Ultimo post
                                          0
                                          • Categorie
                                          • Recenti
                                          • Tag
                                          • Popolare
                                          • Utenti
                                          • Gruppi