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

    $_GET e $_POST array sì ma...

    Salve a tutti, già mi scuso per la banalità della domanda ma sul testo dal quale sto studiando questo punto non è sufficientemente chiaro. Vengo al dunque.
    Devo passare molti dati da una form e per il mio scopo ho scelto di utilizzare il metodo POST.
    Nel file .php che riceve i dati, essendo questi veramente tanti mi trovo a dover fare rifemento alla variabile superglobale $_POST[] indicando di volta il volta il nome del componente che conteneva il dato, mi spiego meglio:

    Codice PHP:
    $dato1 $_POST['nome1'];
    $dato2 $_POST['nome2'];
    $dato... = $_POST['nome...'];
        ...                                
    $daton $_POST['nomen']; 
    mettiamo che i dati da trasferire siano 100, tutto questo, oltre a non essere elegante, mi fa perdere un sacco di termpo (e rischio di sbagliare!)

    quello che vorrei fare è qualcolsa del tipo:

    Codice PHP:
    for (0n+1i++) {
        
    $dato[i] = $_POST[i];

    Ottenendo così un array che posso manipolare a piacere.

    Esiste un modo per ottenere questo tipo di implementazione accedendo a $_POST[] mediante un indice anzichè un riferimento?
    Grazie a tutti ;-)
    La luna è molto più importante del sole: C'è molto più bisogno di luce di notte che non di giorno!

  2. #2
    Ammesso che i campi siano nome1, nome2, etc. puoi usare un codice come questo:

    Codice PHP:
    $count 3;

    for (
    $i 1$i <= $count$i++) {
        print(
    $_POST['nome' $i];

    In alternatica, utilizza direttamente un array:

    Codice PHP:
    <form method="post">
    <input type='text' name='nome[1]' value="a" />
    <input type='text' name='nome[2]' value="b" />
    <input type='text' name='nome[3]' value="c" />
    <input type="submit" />
    </form>
    <pre>
    <?php 
    if (isset($_POST['nome']) && is_array($_POST['nome'])) {
      foreach(
    $_POST['nome'] as $nome) {
          print(
    "{$nome}\r\n");
      }
    }
    ?>
    </pre>

  3. #3
    Grazie!!!!
    La luna è molto più importante del sole: C'è molto più bisogno di luce di notte che non di giorno!

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2000
    residenza
    Edinburgh
    Messaggi
    401
    Puoi anche usare

    Codice PHP:
    foreach($_POST as $p)
       {
       echo 
    $p;
       } 

  5. #5
    Utente di HTML.it L'avatar di dottwatson
    Registrato dal
    Feb 2007
    Messaggi
    3,012
    o addirittura
    Codice PHP:
    extract($_POST); 
    dove per ogni indice crea la variabile ...

    esempio
    Codice PHP:
    $_POST['ciccio']='palla';

    extract($_POST);

    echo 
    $ciccio// stampa palla 
    Non sempre essere l'ultimo è un male... almeno non devi guardarti le spalle

    il mio profilo su PHPClasses e il mio blog laboweb

  6. #6
    Originariamente inviato da dottwatson
    o addirittura
    Codice PHP:
    extract($_POST); 
    Scelta sconsigliata visto che riproduce il comportamento di http://www.php.net/register_globals

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.