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

    E' possibile conoscere il tipo di input?

    Salve a tutti, nuovissima del forum e ahimé anche di php.

    Ho creato un form di cui non conosco a priori i nomi degli input perchè è creato dinamicamente da una tabella.
    Quando l'utente invia il form ho la necessità di prendere i dati digitati e creare una stringa sql.

    Il problema è questo: vorrei utilizzare un ciclo foreach ($_POST as $key => $value) e testare il tipo di input in modo da ignorare gli input di tipo "submit".
    E' possibile in php o dico un'eresia?
    Spero di essermi spiegata...

    Grazie della pazienza
    Stefania

  2. #2
    No ho capito bene,il form e' generato dinamicamente da una tabella,che tabella?
    cmq una volta inviato il form i dati vengono letti dal php (esempio con metodo POST),in questo modo:
    $val=$_POST['name'];
    quindi devi fare in modo di sapere i nomi dei vari input.

  3. #3
    probabilmente non mi sono spiegata.
    nell'array $_POST riesco a prendere sia il valore del campo di input sia il nome tramite l'istruzione che ho scritto prima ( foreach $_POST as $key => $value dove $key indica il nome dell'input e $valore il valore vero e proprio).

    Quindi ho sia il nome che il valore, quello di cui ho bisogno è il tipo ti input, cioè se è un option, un submit o un text.
    Spero di aver chiarito.

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    La risposta alla domanda é: no, non é possibile.
    Peró si possono trovare altre soluzioni.
    Ad esempio puoi generare l'input submit in questo modo <input type="submit" value="send" /> ?

  5. #5
    Io lo genero il submit.
    Il mio problema è fare un ciclo per recuperare i dati inseriti dall'utente.
    Con il ciclo foreach mi mette tutti gli input type compresi quelli di tipo submit.
    devo poter distinguere il $_post di tipo submit e quello di tipo text.

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    Originariamente inviato da stefiza
    Io lo genero il submit.
    Il mio problema è fare un ciclo per recuperare i dati inseriti dall'utente.
    Con il ciclo foreach mi mette tutti gli input type compresi quelli di tipo submit.
    devo poter distinguere il $_post di tipo submit e quello di tipo text.
    Cosí non si puó, devi trovare un'altra via.
    Posta qualche esempio concreto.

  7. #7
    mah...non è vero che non si può. Se non ho capito male, te hai un form che viene generato automaticamente.
    Te non conosci i nomi dei campi e ciclando sull'array $_POST vorresti elaborare i dati ma non prendere in considerazione i campi degli input di tipo submit.

    Beh la soluzione è semplice
    Basta che non gli dai un nome.
    Guarda l'esempio qui sotto:
    Codice PHP:
    <?php
    if(count($_POST) > ){
        foreach(
    $_POST as $key=>$value)    //ciclo sull'array associativo $_POST
            
    echo "$key -> $value";
    }    
    ?>
    <form method="post" action="<?php echo $_SERVER['PHP_SELF']?>">
        <input name="campo1" type="text" />
        <input name="campo2" type="text" />
        <input type="submit" />
    </form>
    L'input submit non verrà preso in considerazione

    Ciaoooo
    We are just...a moment...in time...

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2007
    Messaggi
    143
    Originariamente inviato da koreano
    mah...non è vero che non si può.
    Perdonami, bisognerebbe essere precisi quando si danno risposte.
    La domanda é chiara e si legge direttamente nel titolo del post.
    Si puó conoscere che tipo di input manda il post?
    La risposta a quella domanda é 'no' e aggiungerei anche 'ovviamente no'.
    Quello che si puó fare é trovare un'altra via, come quella che indichi tu, che per altro é stata giá consigliata qualche post prima.

  9. #9
    Beh la domanda la si capisce veramente se si legge cosa scrive lei nel messaggio e non dal titolo del post, perchè quello che lei chiede realmente è "Come fare per ignorare i submit?" (cosa differente dal "E' possibile conoscere il tipo di input?") ed infatti io ho risposto a ciò che voleva sapere realmente lei.
    Poi se ho dato una risposta uguale ad una che già era stata data ammetto di aver sbagliato.

    Cia'
    We are just...a moment...in time...

  10. #10
    Originariamente inviato da koreano

    Guarda l'esempio qui sotto:
    [cut]
    Questo mi sembra funzioni perché non specifichi un nome al submit e quindi viene ignorato.
    il problema è che se hai due bottoni di tipo submit sei costretto a nominarli.

    Grazie comunque per il suggerimento!

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.