Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1

    [html/PHP] - Gestire più form.

    è la prima volta che mi capita di gestire più form nella stessa pagine
    vorrei sapere come identificare quale form sta inviando i dati in base all'id

    codice:
    esempio:
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form_1" id="form_1">
    <input name="title_1" type="text" class="form_300" value="<?= $title_1; ?>" />
    
    <input type="hidden" name="action" value="submitted" />
    <input name="invia" type="submit" class="tasto_form" id="invia" value="Send" />
    </form>
    
    <form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post" name="form_2" id="form_2">
    <input name="title_2" type="text" class="form_300" value="<?= $title_2; ?>" />
    
    <input type="hidden" name="action" value="submitted" />
    <input name="invia" type="submit" class="tasto_form" id="invia" value="Send" />
    </form>
    vorrei sapere come poter identificare la form che invia i dati in base al suo id,
    per recuperare i dati attualmente...:
    Codice PHP:
    <?php
    if ( $_SERVER['REQUEST_METHOD'] == 'POST' && array_key_exists('action'$_POST) && $_POST['action'] == 'submitted'){
        
    $title_1 trim($_POST['title_1']);
        
    $title_2 trim($_POST['title_2']);
    } else {
        
    $title_1 NULL
        
    $title_2 NULL;
    }
    ?>

    cichity74

  2. #2
    up
    cichity74

  3. #3
    up

  4. #4
    metti un campo hidden che ti identifichi il form anzichè utilizzare l'id del tag form.
    max

    Silence is better than bullshit.
    @mmarcon
    jHERE, Maps made easy

  5. #5
    Oppure lo appendi all'url indirizzando il form a pagina.php?form_id=3.

    vedendo la variabile $_GET['form_id'] sai che form è stato inviato.
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  6. #6
    Oppure puoi chiamare il tasto submit con un nome diverso e poi controlli:

    Codice PHP:
    if(isset($_POST['submit_1'])):
        
    //Istruzioni primo form
    elseif(isset($_POST['submit_2'])):
        
    //Istruzioni secondo form
    endif; 
    Comunque chiamando i campi (input) allo stesso modo quando tu chiami:
    $_POST['title'];
    ricevi solo quello appartenente al form in cui l'utente ha premuto il tasto invio.
    MiServe di Santino Bivacqua
    PHP/Ruby/Node.js Developer
    www.miserve.com

  7. #7
    Vi ringrazio per i suggerimenti
    la mia curiosità è proprio data dal tag id che identifica univocamente il form che invia
    qualcuno sa come gestirlo

    cichity74

  8. #8
    Originariamente inviato da cichity74
    Vi ringrazio per i suggerimenti
    la mia curiosità è proprio data dal tag id che identifica univocamente il form che invia
    qualcuno sa come gestirlo

    cichity74
    Credo che tu possa gestirlo tramite javascript
    Se aspetti un'pò di posto il codice che ti serve per indentificarlo ma per il problema che tu poni le soluzioni presentate dagli altri mi sembrano più efficenti.

  9. #9
    Non puoi postare qui codice js! Questo è il forum php. Se vuole codice js posta in quel forum (cacchio! Ne hanno fatto uno apposta! Usiamolo!)
    eCommerceRS.NET - Commerciante, vendi on-line!
    Il mio nick è mircov e non mirco!!!

  10. #10
    Originariamente inviato da mircov
    Non puoi postare qui codice js! Questo è il forum php. Se vuole codice js posta in quel forum (cacchio! Ne hanno fatto uno apposta! Usiamolo!)
    Non posto codice js capito!

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.