Visualizzazione dei risultati da 1 a 8 su 8

Discussione: Recupero valori Post

  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    33

    Recupero valori Post

    Ciao a tutti,
    domanda da novello:
    E' possibile recuperare tutti gli elementi passati attraverso il post in modo automatico?
    Essendo io un profano di php mi sono inventato la sintassi per far capire cosa vorrei fare.


    for(i=0;i<(n°di elementi$_post)*;i++){

    $_nomeCampo[i]=nome di $_post[i]**
    $_valoreCampo[i]=$_post[i]

    }

    *Esiste una proprietà per richiamare il numero di elementi passati con post?
    **Esiste una proprietà che ritorni il nome del campo data la sua chiave?

    Ciao

  2. #2
    $_POST è un array quindi puoi utilizzare il count e riferirti ad ogni elemento per indice. Altro non so , se ti può essere utile ecco del codice simile pero' con le variabili passate con method GET (serve a ricostruire tutti i parametri passati dalla pagina precedente)
    codice:
    $a = explode('&', $_SERVER['QUERY_STRING']);
    $i = 0;
    while ($i < count($a)) {
       $b = split('=', $a[$i]);
       $param_name = htmlspecialchars(urldecode($b[0]));
       echo '    <input type="hidden" name="'. htmlspecialchars(urldecode($b[0])) .'" value="' . htmlspecialchars(urldecode($b[1])) . '">';
       $i++;
    }


  3. #3
    Se vuoi saperne di piu' consulta la guida :rollo:

    http://www.php.net/manual/it/languag...s.external.php

    Ciaoooo
    <<E' una decisione molto importante. Pensaci bene, Ataru!>>
    <<STOLTO! Non lo sai che io AGISCO SEMPRE PRIMA DI PENSARE???>>

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    33
    perchè non và?


    //recupero la lunghezza dell'array $_POST
    $l=count($_POST);
    //Stampo a video>> e funziona!
    echo $l;

    //ciclo per stampare i contenuti dell'array
    $i=0;
    for ($i=0; $i<$l; $i++){
    echo $_POST[$i].'
    ';

    }

    Il ciclo mi da un errore
    Notice: Undefined offset: 0

    ma se $_POST è un Array, anzi un Super Global Array, perchè non mi restituisce il contenuto datogli l'indice?


  5. #5
    Utente di HTML.it L'avatar di Emyl
    Registrato dal
    Jul 2004
    Messaggi
    250
    E' un array associativo, e utilizza i nomi dei campi come indici: provo a buttare la' un codice al volo:

    codice:
    foreach(array_keys($_POST) as $tmp) {
       echo $_POST["{$tmp}"];
    }
    Ti chiedo di testarlo
    "Ci sono 10 tipi di persone, quelli che capiscono i numeri binari...
    e quelli che non li capiscono."

  6. #6
    Utente di HTML.it
    Registrato dal
    Nov 2004
    Messaggi
    33
    Mitico!

    foreach(array_keys($_POST) as $tmp) {
    echo $tmp.' = '.$_POST["{$tmp}"].'
    ';
    }

    ottengo la lista campo=valore di tutti gli elementi passati con post

    proprio quello che volevo.
    Adesso implemento un pò con qualche condizione qua e qualche ciclo la e probabilmente tornerò a chiedere aiuto..
    Ciao e grazie

  7. #7

    [OT]

    visto che ci siamo, ne aprofitto.....
    non ho mai campito il senso della sintassi:

    foreach(array_keys($_POST) as $tmp)

    quell'AS cosa rappresenta?

  8. #8

    Re: [OT]

    Originariamente inviato da OhMyGod
    visto che ci siamo, ne aprofitto.....
    non ho mai campito il senso della sintassi:

    foreach(array_keys($_POST) as $tmp)

    quell'AS cosa rappresenta?
    Letteralmente "come"...

    Poiche' in un array i valori sono almeno due (indice + valore) scorrendo con un foreach vai a precisare se vuoi visualizzare il solo valore oppure anche la chiave. L'esempio postato prima con arrey_keys e' ridondante. Cioe' non serve.
    questo esempio fa le stesse cose ma con una funzione in meno:
    codice:
    foreach($_POST as $key => $value) {
    echo "$key = $value 
    ";
    }
    In questo caso si estrae $key (AS $key) => $value ed il suo valore associato. Mentre in questo successivo:
    codice:
    foreach($_POST as $value) {
    echo "$value 
    ";
    }
    si estraggono solo i valori senza associazione all'indice.



    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.