Navigazione

    Privacy - Termini e condizioni
    © 2020 Search On Media Group S.r.l.
    • Registrati
    • Accedi
    • CATEGORIES
    • Discussioni
    • Non letti
    • Recenti
    • Hashtags
    • Popolare
    • Utenti
    • Stream
    • Interest
    • Categories
    1. Home
    2. Categorie
    3. Coding e Sistemistica
    4. Coding
    5. fopen - l'attributo 'r+' si comporta uguale a 'w+'
    Questa discussione è stata cancellata. Solo gli utenti con diritti di gestione possono vederla.
    • M
      max.400 User Attivo • ultima modifica di

      fopen - l'attributo 'r+' si comporta uguale a 'w+'

      Devo aggiungere delle righe ad un file... di solito ho sempre usato l'attributo 'a+' che scrive in fondo al file di testo....
      Ma sta volta per il lavoro che devo fare, mi serve l'opposto,
      cioè scrivere ad inizio file senza sovrascrivere il contenuto.

      Pensavo di usare l'attributo r+ ma esso mi cancella la prima riga. 
      Facendo una ricerca su google ho visto che anche altre persone hanno avuto il mio stesso problema 
      

      forum.it.altervista.org/php-mysql-e-file-database/89629-php-problema-fopen-r.html
      in questa discussione un moderatore dreadnaut esprime esattamente l'uso dell'attributo r+

      che si può fare?

      0 Miglior Risposta Ringrazia Cita Rispondi

        1 Risposta Ultima Risposta
      • Z
        ziobudda Super User • ultima modifica di

        Ciao, se il file non è troppo grande (da occuparti tutta la memoria a tua disposizione) potresti caricare il file in una variabile a cui precedentemente avevi inserito le righe da mettere in cima, e risalvare il file.

        M.

        0 Miglior Risposta Ringrazia Cita Rispondi

          1 Risposta Ultima Risposta
        • M
          max.400 User Attivo • ultima modifica di

          il fatto è che devo inserire più volte un nuovo argomento
          e le righe devo scendere...

          caricare un file in una variabile?
          mi fai un esempio?

          grazie

          0 Miglior Risposta Ringrazia Cita Rispondi

            1 Risposta Ultima Risposta
          • T
            tigrone User Attivo • ultima modifica di

            Memorizzi tutto il contenuto in una variabile:

            $var=fopen("tuofile.txt","r"); 
            $dim=filesize("tuofile.txt"); 
            $contenuto=fread($var,$dim); 
            fclose($var);
            

            A questo punto, nella variabile $contenuto hai tutto il testo del file quindi ti basta salvare l'aggiornamento e poi il contenuto nel file sovrascrivendolo.

            $nuovo='nuova stringa da aggiungere';
            $var=fopen("tuofile.txt","w+"); 
            fwrite($var,$nuovo.$contenuto); 
            fclose($var);
            

            Ovvio che, se il file è grande, ti conviene lavorare con tabella su database.

            0 Miglior Risposta Ringrazia Cita Rispondi

              1 Risposta Ultima Risposta
            • M
              max.400 User Attivo • ultima modifica di

              grazie mille...
              un ultima cosa l'andare a capo
              è meglio con ```
              <br /> oppure \n

              <form action="riceve2.php" method="POST">
              Titolo: <input size=85 type="text" name="titolo"><br>
              <textarea name='messaggio' cols='70' rows='15'> </textarea><br>

              <input name="submit" type="submit" value="invia"><input type="reset" value="cancella">
              </form>

              <?
              $_POST['titolo'];
              $_POST['messaggio'];
              ?>

              <?
              $var=fopen("deposito.php","r");
              $dim=filesize("deposito.php");
              $contenuto=fread($var,$dim);
              fclose($var);

              $nuovo='nuova stringa da aggiungere';
              $var=fopen("deposito.php","w+");
              fwrite($var,$nuovo.$titolo.$messaggio.$contenuto);
              fclose($var);
              ?>

              <a href="deposito.php">vai a deposito.php </a>

              grazie 1000
              
              maxgiulia.altervista.org/max/08-agosto/textarea/prova/form2.html
              0 Miglior Risposta Ringrazia Cita Rispondi

                1 Risposta Ultima Risposta
              • T
                tigrone User Attivo • ultima modifica di

                Non so dove lo devi mettere... e poi dipende... prova sia con uno che con l'altro...

                Comunque lo metti così:

                fwrite($var,$nuovo.$titolo.$messaggio.'<br />'.$contenuto);
                
                0 Miglior Risposta Ringrazia Cita Rispondi

                  1 Risposta Ultima Risposta
                • Z
                  ziobudda Super User • ultima modifica di

                  il <br> serve per andare a capo in HTML, lo \n per andare a capo nei file e dare un senso a quello che si legge editandoli.

                  M.

                  0 Miglior Risposta Ringrazia Cita Rispondi

                    1 Risposta Ultima Risposta
                  • M
                    max.400 User Attivo • ultima modifica di

                    grazie di tutto ragazzi dovrei solo inserire la data e l'ora e poi inserisco il tutto in una tabella...

                    \n non mio funziona l'altro si... o forse ho sbagliato qualkosa
                    comunque ecco il risultato
                    maxgiulia.altervista.org/max/08-agosto/textarea/prova/deposito.php

                    e questo il form
                    maxgiulia.altervista.org/max/08-agosto/textarea/prova/form2.html

                    grazie 1000 :yuppi:

                    PS mi ricollego stasera dopo mezzanotte come il lupo ... auuuuuu

                    0 Miglior Risposta Ringrazia Cita Rispondi

                      1 Risposta Ultima Risposta
                    • T
                      tigrone User Attivo • ultima modifica di

                      maxgiulia.altervista.org/max/08-agosto/textarea/prova/deposito.php

                      Prima di mandare in output i dati, passali con lo stripslashes().

                      0 Miglior Risposta Ringrazia Cita Rispondi

                        1 Risposta Ultima Risposta
                      • M
                        max.400 User Attivo • ultima modifica di

                        ho iniziato da poco a studiare php
                        ed ho bisogno sempre di esempi

                        grazie - ciao

                        0 Miglior Risposta Ringrazia Cita Rispondi

                          1 Risposta Ultima Risposta
                        Caricamento altri post
                        Rispondi
                        • Topic risposta
                        Effettua l'accesso per rispondere
                        • Da Vecchi a Nuovi
                        • Da Nuovi a Vecchi
                        • Più Voti