Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: Form stessa pagina con qualche complicazione

  1. #1
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8

    Form stessa pagina con qualche complicazione

    Ciao a tutti.!
    sto costruendo un sito (Php7 - Mysql) dove mi autentico atraverso $_SESSION['username'] che mi porto dietro poichè mi da poi diverse visibilità di menu e opzioni. Ora adesso dovrei costruire una pagina di invio dati da un form ad una tabella temporanea. Stesso form ma scritture multiple. In seguito sempre sulla stessa pagina visualizzare ciò che ho scritto sulla tabella tmp (somma dei vari invii del form sopra), verificare se i dati sono corretti e se non sono corretti poter eliminare un record (es. il 2 o 5 invio), e poi prendere i dati che ho verificato e spostarli dalla tabella tmp ad un'altra tabella!
    Ora non mi è chiarissimo come poter mandare il form e visualizzare i dati x il controllo sulla stessa pagina!
    Mi potreste dare qualche dritta?

    Grazie

  2. #2
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    basta reindirizzare la action del form sulla stessa pagina, se per es. la pagina si chiama form.php, action="form.php" oppure, trascurando la sicurezza, in modo dinamico action="<?php echo $_SERVER['PHP_SELF']; ?>"

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8
    Ciao, grazie della risposta.
    Tuttavia non riesco ancora nella mia impresa!

    codice:
    <form action="inserimento.php" method="POST">
    <select name="categoria" id="categoria"></select>
    <input type="date" name="data"id="data">
    <input type="time" name="ora" id="ora">
    <input type="button" id="bottone" value="Salva"></form>
    $categoria = $_POST['categoria'];
    $data = $_POST['data'];
    $ora = $_POST['ora'];
    
    $sql = "INSERT INTO tabella (id_categoria, data, ora )VALUES ('$categoria','$data','$ora')";
     echo $sql;
    ma non mi prende i dati inseriti

    ovviamente in file si chiama inserimento.php

  4. #4
    Utente di HTML.it L'avatar di jeppox
    Registrato dal
    Mar 2007
    Messaggi
    436
    se il file in cui gestisci il tutto è sempre inserimento.php così come hai mostrato non può funzionare. Devi strutturare un attimo il tuo codice. La pagina inserimento.php la devi dividere tra la parte html con il form e la parte in cui gestisci i valori dopo che hai inviato il form tramite PHP.

    Per es. una cosa del genere per la pagina inserimento.php

    codice:
    <?php
    
    // form inviato
    if(isset($_POST['button']) && $_POST['button'] == 'Salva') {
    // gestione dei campi inviati facendo il submit del form
    
    var_dump($_POST);
    
    ... sql insert ...
    
    } else {
    // form in HTML
    ?>
    
    <form action="inserimento.php" method="POST">
        <select name="categoria" id="categoria"></select>
        <input type="date" name="data"id="data">
        <input type="time" name="ora" id="ora">
        <input type="button" name="button" id="bottone" value="Salva">
    </form>
    
    <?php } ?>

  5. #5
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8
    grazie delle info.
    ero riuscito a inviare i dati anche se la tua soluzione mi appare più pulita.
    Solo che ora necessito che nell stessa pagina mi faccia vedere ad ogni inserimento un "refresh" di una query.
    E qui proprio non ho alba di come affrontare

  6. #6
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8
    Ora ho messo i dati nella tabella tmp, ora vorrei verificare se i dati sono corretti e se non sono corretti poter eliminare un record (es. il 2 o 5 invio), e poi prendere i dati che ho verificato e spostarli dalla tabella tmp ad un'altra tabella!
    Ovviamente nella stessa pagina

  7. #7
    Quote Originariamente inviata da Uzzi78 Visualizza il messaggio
    Ora ho messo i dati nella tabella tmp, ora vorrei verificare se i dati sono corretti e se non sono corretti poter eliminare un record (es. il 2 o 5 invio), e poi prendere i dati che ho verificato e spostarli dalla tabella tmp ad un'altra tabella!
    Ovviamente nella stessa pagina
    Puoi controllare i dati prima di inserirli in una tabella temporanea o meno, ti basta scorrere l'array $_POST e confrontare i dati che sono lì dentro, quando sei sicuro che siano corretti li inserisci nella tabella definitiva.

  8. #8
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8
    Grazie della dritta ma provo a spiegami meglio:
    Per inserire i record, lo faccio uno alla volta, di solito solo oltre 20 inserimenti!
    Poi vorrei visualizzare i 20 inserimenti temporanei, controllarli, eventualmente cancellarne uno o più e fare l'inserimento definitivo
    Ultima modifica di Uzzi78; 04-06-2018 a 14:49

  9. #9
    Cioè scusa: prima li inserisci, poi li visualizzi, poi li correggi, poi li inserisci nuovamente corretti?

  10. #10
    Utente di HTML.it
    Registrato dal
    May 2018
    Messaggi
    8
    Inserisco 1 record,inserisco 2 record e così via, finito l'inserimento, controllo gli inserimenti fatti, eventualmente cancello 1 o 2 record e poi scrivo i definitivi. Ovviamente tutto sulla stessa pagina

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