Visualizzazione dei risultati da 1 a 10 su 17

Hybrid View

  1. #1
    Moderatore di CSS L'avatar di KillerWorm
    Registrato dal
    Apr 2004
    Messaggi
    5,780
    Scusa il ritardo ma non avevo visto la tua risposta; ogni tanto il forum fa le bizze e non segna l'ultimo post nel riepilogo delle discussioni.

    Non so se nel mentre hai risolto qualcosa, in caso contrario bisognerebbe andare per gradi per per risalire alle eventuali cause del problema.

    Quote Originariamente inviata da patdepri
    Dalla mia ignoranza autocomplete="off" teoricamente non dovrebbe esserci perché altrimenti come fa a caricare i dati prelevati dal file data.txt?
    No, è solo una funzionalità del browser ed è indipendente da altri eventuali sistemi aggiunti dallo sviluppatore per salvare/caricare i dati nei campi.

    L'attributo html autocomplete indica al browser se fornire all'utente opzioni per il completamento basate su quanto l'utente stesso ha precedentemente immesso in un campo e se mantenere memorizzato il valore immesso per il futuro, a prescindere che tali valori siano o no salvati da qualsivoglia sistema.

    Anche se nel tuo caso, all'apertura della pagina, i campi vengono forzatamente ripopolati attraverso il tuo sistema, è possibile che le scelte visualizzate non coincidano con quelle salvate se l'utente non aveva eseguito il submit. In tal caso con un refresh della pagina, o se questa viene ripristinata all'apertura del browser, saranno mostrate le ultime scelte applicate dall'utente, sebbene non risultino salvate.

    Forse da un lato è una funzionalità che potrebbe anche tornare utile, ma nel caso si dovrebbe avvertire l'utente in qualche modo che le modifiche effettuate non risultano essere state salvate.
    Diversamente questo potrebbe creare confusione, per tale motivo a mio parere in questo caso è meglio semplicemente mantenere disattivato l'autocomplete.

    Quote Originariamente inviata da patdepri
    L’unica cosa che posso intuire è che nella riapertura della finestra del browser, il file data.txt sembra proprio che non venga riletto, ma vengano rilette le variabili in memoria.
    E' possibile che il problema principale sia nella scrittura o lettura del data.txt.
    Il fatto che vengano applicate le scelte "in memoria" potrebbe dipendere appunto dall'autocomplete (che da quanto intuisco non lo hai disattivato).

    Quote Originariamente inviata da patdepri
    purtroppo il difetto della chiusura e riapertura si ripresenta come prima
    Non per sfiducia nei tuoi confronti ma è sempre meglio riportare sul forum il codice da te modificato in modo da poter avere un riscontro più preciso di ciò che hai fatto.

    Puoi postare giusto la parte PHP/HTML, anche senza CSS, rimuovendo magari le parti non strettamente necessarie.

    Quote Originariamente inviata da patdepri
    sembra proprio che la rilettura delle variabili venga bypassata
    Hai verificato che avvenga comunque la scrittura?

    Dovresti verificare i permessi di scrittura/lettura del file data.txt e della relativa cartella.

    Se usi un client FTP dovresti poter verificare/modificare i permessi attraverso il menu contestuale dei singoli file/cartelle.

    Dove stai pubblicando il tuo elaborato?
    Tieni conto che alcuni servizi di hosting mettono a disposizione una specifica cartella pubblica con permessi di lettura e scrittura.
    Installa Forum HTML.it Toolset per una fruizione ottimale del Forum

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2023
    Messaggi
    17
    Quote Originariamente inviata da KillerWorm Visualizza il messaggio
    Scusa il ritardo ma non avevo visto la tua risposta; ogni tanto il forum fa le bizze e non segna l'ultimo post nel riepilogo delle discussioni.

    Non so se nel mentre hai risolto qualcosa, in caso contrario bisognerebbe andare per gradi per per risalire alle eventuali cause del problema.
    Carissimo buona sera,
    prima di tutto devo ringraziarti ancora per la tua disponibilità, di essere persona di parola e che non abbandona la discussione quando dall’altra parte si chiede aiuto (chi chiede aiuto ha sempre bisogno di risposte concrete).
    In questi giorni, visto che non avevi postato altro, ho pensato che ci fosse qualche problema, così nel frattempo ho letto centinaia di pagine a proposito dell’argomento cache, perché intuivo che il problema fosse proprio lì.
    Infatti... il problema non è solo mio, o meglio, ma di tutti i browser che oltretutto si comportano anche in maniera differente.


    Ci sono effettivamente dei modi per eseguire un reset di files e altre cose vedi:


    Tip: Functions that are caching:


    PHP clearstatcache() Function


    stat()
    lstat()
    file_exists()
    is_writable()
    is_readable()
    is_executable()
    is_file()
    is_dir()
    is_link()
    filectime()
    fileatime()
    filemtime()
    fileinode()
    filegroup()
    fileowner()
    filesize()
    filetype()
    fileperms()


    ma di variabili in memoria del browser: nulla tranne l’intervento manuale che ho trovato da qualche parte in rete e che riporto esattamente:


    Come Forzare il Refresh di una Singola Pagina


    Prima di cancellare l’intera cache del browser, un trucco che potete provare è quello del “force refresh”. Di solito, quando si aggiorna una pagina, il browser serve ancora la versione in cache della pagina invece di scaricare di nuovo tutte le risorse. Ma è possibile bypassare la cache e forzare un aggiornamento completo utilizzando alcuni semplici tasti di scelta rapida:


    Browser Windows e Linux: CTRL + F5
    Apple Safari: SHIFT + pulsante della barra degli strumenti Reload
    Chrome e Firefox per Mac: CMD + SHIFT + R
    Ripetiamo, questo metodo bypassa la cache solo per la pagina specifica su cui vi trovate. Lascia il resto della cache del browser intatta. Pertanto, questa soluzione è ottima se si verificano problemi con una sola pagina. Ma se volete resettare completamente (ad esempio, per un intero sito), è meglio cancellare l’intera cache del browser.


    Comunque la tal cosa sopra menzionata a me NON VA BENE in questo caso perché ho bisogno di usare il mio file anche su iPhone, senza incertezze, non posso usare i metodi sopra menzionati.


    Allora mi sono convinto di una cosa, ho esaminato il comportamento del mio (più tuo) lavoro e ho visto che quando chiedevo il ripristino dei dati con alcune modifiche e in certe circostanze i valori non variavano.


    Allora... perché non mettere un altro form con l’intento di recuperare i dati?


    Evvaiiiiii in questo modo ho visto che al caricamento della pagina cliccando sul benedetto Reload Data... Tadaaaaaa i dati erano sempre lì a fare il loro dovere.


    Questo mi ha anche permesso di:
    - scegliere di recuperare i dati
    - oppure di iniziare tutto da zero


    Grazie per la tua pazienza e ti allego sommariamente il codice di seguito.


    Ma domani ti devo chiedere una cosettina ancora abbastanza banale.


    Il tutto è caricato su A..ba, lavora in https:// e php 8 posso controllare permessi e altro, ma non era questo il problema.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2023
    Messaggi
    17
    Credo di aver ricostruito il tutto, ma mi sembra che sia corretto:

    codice:
    <!DOCTYPE HTML><html lang="it">
      <head>
        <title>Esempio</title>
        <link rel="stylesheet" href="./style.css">
      </head>
      <?php
      if(isset($_POST["reload_data"])){
        // Leggo i dati salvati nel file txt
          $myfile  = fopen("data.txt", "r") or die("Unable to open file!");
          $read = fread($myfile, filesize("data.txt"));
          $divide = explode(";", $read);
          fclose($myfile);
          
          // Riporto i valori per ripristinare il form
          $fixed_text_1 = $divide[0];
          $checkbox1 =    $divide[1];
          $_POST["fixed_text_1"];
          $_POST["checkbox1"];
      
          echo "--- Dati ripristinati ---<br><br>";
          // Anteprima dei dati grezzi
        echo $fixed_text_1."<br>".$checkbox1."<br>";
        }
        
        if(isset($_POST["enter_data"])){
          // Se la pagina è stata richiamata tramite submit
          
          // Recupero i valori dal form
          $fixed_text_1 = isset($_POST["fixed_text_1"]) ? "1" : "0";
          $checkbox1    = isset($_POST["checkbox1"]) ?    "1" : "0";
          
          // Registro i dati sul file txt
          file_put_contents('data.txt', '');
          $fp = fopen('data.txt', 'a');
          $all_data = $fixed_text_1.";".$checkbox1;
          fwrite($fp, $all_data,);
          fclose($fp);
          echo "--- Dati salvati ---<br><br>";
          }
      ?>
              <!--
              ... ho messo il codice HTML in una tabella che nel mio caso comprende diversi elementi
            -->
            <form action="index.php" method="post">
               <hr><input type="checkbox" name="fixed_text_1" value="1"  <?php if($fixed_text_1 == "1") echo "checked"; ?>> Example 1
              <br><input type="checkbox" name="checkbox1" <?php if($checkbox1 == "1") echo "checked"; ?>>
              <hr><input class="favorite styled" type="submit" name="enter_data" value="Enter data">
      
            </form>
            <form action="index.php" method="post">
                <hr><input class="favorite styled" type="submit" name="reload_data" value="Reload data">
            </form>
            
            <!--
                ... ho messo il codice HTML in una tabella che nel mio caso comprende diversi elementi
              -->
          </body>
      </html>

    Così funziona "alla grande".

    Accetto consigli nel caso ti sembri non sequenzialmente corretto o altro, sono qui per imparare.

    Tieni conto che passare da html a php passando anche per C e compagnia bella trovo abbastanza confuse certe scelte.
    In questo campo (php) sto imparando da zero e il codice che avevo postato all’inizio era creato fondamentalmente da me con pochissime scopiazzature.

    Buona serata e buona pazienza.
    Ultima modifica di patdepri; 07-12-2023 a 23:28

Tag per questa discussione

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 © 2026 vBulletin Solutions, Inc. All rights reserved.