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

    Visualizzare i dati di una form

    Saluti a tutti

    Ho uno scriptino ignorante ignorante, ma che fa il suo dovere...
    genera un .html con i dati inseriti in una form...
    e me lo genera in una cartella che stabilisco...

    Volevo sapere:

    • 1. invece di creare un file, posso stampare direttamente i dati a video e basta? Cioè clicco INVIA e ottengo la visualizzazione dei dati della form... poi uno se vuole si salva il file...
    • 2. se non si può fare (so che si può... ma se è troppo complesso) come faccio a visualizzare subito il link al file generato? lo vorrei sotto il feedback con esito positivo...
      Cioè, ora ho echo "File Scritto con successo";
      io vorrei invece echo "File Scritto con successo
      Lo trovi a questo <a href... $path...ecc..>link</a>";


    So che non è complesso... C'ho provato... e riprovato... ma... gnente...
    Chi ha cinque minuti mi fornisce una dritta...

    Ecco lo scriptino (non mi ricordo più da quale discussione l'avevo prelevato... ma è quasi testuale, e funziona correttamente), Grazie comunque a tutti :

    Codice PHP:
    <?php
    $path 
    "path"//Percorso della cartella dove verrà  creato il file, SENZA LO SLASH FINALE
    function create($name$text) {
     global 
    $path$result;
     
     if(empty(
    $name) || empty($text)) {
     
    $result "CampiVuoti";
     } else {
     
      if(
    is_writable($path)) {
     
      
    $name addslashes(htmlentities($nameENT_QUOTES));
      
    $text nl2br(addslashes(htmlentities($textENT_QUOTES)));
     
       if(
    check_name($name)) {
       
    $open fopen($path."/".$name.".html""w+");
       
    $write fwrite($open$text);
       
    fclose($open);
       
    $result "FileScritto";
       } else {
       
    $result "NomeEsistente";
       }
     
      } else {
      
    $result "NotWritable";
      }
     
     }
     return 
    $result;
    }
    //CONTROLLO SE ESISTE UN FILE CON LO STESSO NOME
    function check_name($name) {
     global 
    $path;
     
     if(
    file_exists($path."/".$name.".html")) {
     return 
    false;
     } else {
     return 
    true;
     }
    }
    if(!isset(
    $_POST['Submit'])) {
    echo 
    "<form method=\"post\" action=\"".$_SERVER['php_self']."\">\n";
    echo 
    "<input type=\"text\" size=\"20\" value=\"Nome File\" name=\"name\" />
    \n"
    ;
    echo 
    "<textarea rows=\"10\" cols=\"20\" name=\"text\">Testo</textarea>
    \n"
    ;
    echo 
    "<input type=\"submit\" value=\"Crea\" name=\"Submit\" />
    \n"
    ;
    echo 
    "</form>\n";
    } else {
    $name $_POST['name'];
    $text $_POST['text'];
    $result create($name$text);
     if(
    $result == "CampiVuoti") {
     echo 
    "Riempire tutti e due i campi";
     } else {
     
      if(
    $result == "NotWritable") {
      echo 
    "Non ti è consentito creare file in questa cartella";  
      } else {
     
       if(
    $result == "NomeEsistente") {
       echo 
    "Nome del file già  presente";
       } else {
       echo 
    "File Scritto con successo";
       }
     
      }
     
     }
    }
    ?>
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

  2. #2
    arieccomi...
    non sono capace di fare il tutto da me...
    nessuno oggi sembra avere tempo da dedicare a un principiante...

    ma continuando a scavare in rete ho trovato qualcosa che fa al caso mio...

    Vi chiedo solo una cosa:

    questo scriptino, che ho testato solo in locale, mi può creare problemi con i permessi sul server? oppure posso andare tranquillo che il file con i contenuti mi viene scritto comunque? :master:

    Grazie come sempre e comunque...


    ecco i file:

    file form.php

    Codice PHP:
    <form method="post" action="write.php">
        <?php
        
    //Creazione campi
        //Possiamo anche aumentare il numero dei campi
        
    for($i 1$i <= 3$i++){
            
    ?>
            <input type="hidden" name="id_<?php echo $i;?>" value="<?php echo $i;?>">
            <?php echo $i;?>) Nome: <input type="text" name="nome_<?php echo $i;?>">
            Tel: <input type="text" name="tel_<?php echo $i;?>">
            <hr>
            <?php
        
    }
        
    ?>
        <input type="submit" value="Invia Dati">
    </form>
    file write.php

    Codice PHP:
    <?php
    //Richiamo tutte le variabili
    $vars get_defined_vars();

    //Array contenente tutte le variabili
    $my_array = array();

    //Popolo l' array
    foreach($vars['_POST'] as $key => $val){
        
    array_push($my_array$val);
    }

    //Configuro la visualizzazione
    $no_field 3// Numero dei campi inviati x ogni record
    $size = (count($my_array) / $no_field); //Numero dei Records
    $start 0//Record iniziale

    for($i 1$i <= $size$i++){
        
        
    //Prelevo i dati del record
        
    $id $my_array[$start];
        
    $nome $my_array[$start 1];
        
    $tel $my_array[$start 2];
        
        
    //Visualizzo i Dati
        
    echo "[*]ID:" $id;
        echo 
    "[*]NOME:" $nome;
        echo 
    "[*]TEL:" $tel;
        echo 
    "<hr>";
        
        
    //Passo al prossimo record
        
    $start $start $no_field;
    }
    ?>
    O saisons, ô châteaux,
    Quelle âme est sans défauts?

    Rimbaud - L'Éternité (1872)

    EsseZeta - VisualWriting | www.essezeta.org

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.