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

    svuota POST e torna a Form

    Buonadomenica forum!
    un pezzetto per volta sto riuscendo a costruire la mia piccola applicazione news.
    Il problema di oggi è:
    ho una pagina con un elenco di news ognuna delle quali sta in un file .txt ed
    un form in cui all'occorenza inserisco il nome di un file da cancellare
    se premo 'submit' viene verificato che il file esista, se si viene cancellato se no viene chiesto di controllare e riscrivere il nome ...e fin qui va tutto bene!
    IL PROBLEMA è che una volta cancellato il file di troppo o uscito il messaggio "nome sbagliato riprova e controlla" sono in una pagina bianca e non torno a visualizzare il form

    ho provato queste tre stringhe (vedi nel codice), ovviamente senza // davanti! ma nessuna funziona
    // unset ($nomeFile);
    // $nomeFile = NULL;
    // $_POST = array();

    COme faccio a tornare alla situazione in cui $_POST è vuoto e quindi mi riappare il form?!
    Grazie
    webnadia

    Codice PHP:
    <?php
    if (!isset($_POST['submit'])) {
    ?>

    <form action="terzo.php" method="post">
    Inserisci il nome del file da cancellare
    <input type="text" name="cancellami" size="30" />
    <input type="submit" name="submit" value="Elimina File" />
    </form>


    <?php
    } else {
    $nomeFile = isset($_POST['cancellami']) ? $_POST['cancellami'] : 0
    if (isset(
    $nomeFile)){
    $msg1 "Stai per cancellare il file $nomeFile vuoi procedere?";    
    ?>
    <script language="Javascript">
    alert('<?php echo $msg1 ?>');
    </script>

    <?php
    if (!file_exists($nomeFile)) {
    $msg2 "Non riesco a trovare il file $nomeFile Sicura di aver scritto il nome giusto? Controlla e Riprova!";
    ?>
    <script language="Javascript">
    alert('<?php echo $msg2 ?>');
    </script>

    <?php
    // unset ($nomeFile);
    // $nomeFile = NULL; 
    // $_POST = array();

    } else {

  2. #2
    Separa l'operazione in due file: uno contenente il form e uno che processa i dati che il form gli invia. Se devi ritornare al form (vuoto) basta che fai un redirect dalla seconda pagina alla prima.

  3. #3
    grazie kb
    solo che non posso separare il form dalla pagina con i dati perchà nella casella "cancella" del form deve venir inserito il nome del file da cancellare che è piuttosto complesso e quindi devo permettere alla persona di copiarlo (seleziona copia incolla)

    nel frattempo con un piccolo escamotage sono riuscita a fare in modo che dopo l'uscita del messaggio generato con javascript si rivisualizzi la mia pagina con form e dati

    ORA quello che mi manca è che nel caso in cui il file ci sia e venga effettivamente cancellato:

    a) esce il messaggio "ok cancellato" ma nella pagina continua a vedersi il messaggio (che nella realtà non c'è più) ....e non va bene

    b) aggiungo a fondo pagina un header('Location:nomepagina.php') che punta alla stessapagina con form e dati e mi aggiorna post cancellatura ma non escono i messaggi "vuoi cancellare" e "ok cancellato" ....e non va bene!!!

    pensavo fosse un problema di posizionamento della stringa header ma l'ho spsotata un po' ovunque e il risultato non cambia!!!

    mi chiedevo inoltre: non sarà possibile far fare l'aggiornamento direttamente a javascript?
    (non so nulla di javascript!)
    tipo invece di

    codice:
    <script language="Javascript">
    alert('<?php echo $msg3 ?>'); 
    </script>
    usare un messaggio che alla pressione di ok aggiorni anche la pagina?

    GRAZIE

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.