Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [PHP - txt] Problema con fputs.

    Ciao a tutti!

    Ho creato un piccolo form con il quale tenere aggiornati alcuni contenuti di un mio sito.
    Ho cercato anche di inserire, con un semplice codice, una sorta di password di conferma, la quale, se corretta, permetterebbe il definitivo salvataggio del file sul server.

    In effetti, se la password corrisponde, i contenuti scritti all'interno del form vengono correttamente salvati, ma se si verifica uno degli errori contemplati (tipo non viene digitata la password o non è corretta), invece di non accadere nulla il file viene cancellato nel suo contenuto risultando vuoto alla sua successiva lettura (dovendo quindi riscrivere tutto dall'inizio).

    Come posso fare che ciò non si verifichi più?

    Grazie e buon fine settimana a tutti!

    Questo è il codice utilizzato:

    <?php
    $controllo = $pass_conferma;
    $errore = false;
    if (!$apriw = @fopen ("miofile.txt","w")) {
    $errore=true;
    echo "IMPOSSIBILE APRIRE IL FILE";
    }

    if ($controllo == "") {
    $errore=true;
    echo "NOI HAI DIGITATO LA PASSWORD DI CONFERMA";
    }

    if (($controllo != $password) && ($controllo != "")) {
    $errore=true;
    echo "LA PASSWORD DIGITATA NON E' CORRETTA";
    }

    if ($controllo == $password) {
    $apriw = @fopen ("miofile.txt","w");
    $descrizione1= $descrizione;
    $descrizione1 = stripslashes(stripslashes($descrizione));
    @fputs($apriw, "$descrizione1");
    @fclose($apriw);
    }

    if($errore){
    echo "REINSERISCI I DATI";
    }

    else{
    echo "SALVATAGGIO ESEGUITO CON SUCCESSO!!!"
    }
    ?>

  2. #2
    Ciao!

    Alla fine, dopo qualche tentativo, sono riuscito a risolvere il mio problemino.

    Era sufficiente sostituire nelle prime righe di codice la "w" del fopen con la "r".
    Ora funziona perfettamente:

    <?php
    $controllo = $pass_conferma;
    $errore = false;
    if (!$apriw = @fopen ("miofile.txt","r ")) {
    $errore=true;
    echo "IMPOSSIBILE APRIRE IL FILE";
    }

    if ($controllo == "") {
    $errore=true;
    echo "NOI HAI DIGITATO LA PASSWORD DI CONFERMA";
    }

    if (($controllo != $password) && ($controllo != "")) {
    $errore=true;
    echo "LA PASSWORD DIGITATA NON E' CORRETTA";
    }

    if ($controllo == $password) {
    $apriw = @fopen ("miofile.txt","w");
    $descrizione1= $descrizione;
    $descrizione1 = stripslashes(stripslashes($descrizione));
    @fputs($apriw, "$descrizione1");
    @fclose($apriw);
    }

    if($errore){
    echo "REINSERISCI I DATI";
    }

    else{
    echo "SALVATAGGIO ESEGUITO CON SUCCESSO!!!"
    }
    ?>

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.