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

    Recuperare tutti i $_POST (chiavi e valori)

    Salve stavo provando a recuperare tutti i *$_POST di una pagina e ho scritto:

    Codice PHP:
        $i 0;
            
    $question['20'];
            
    $reponse['20']; 
            
            foreach (
    $_POST as $chiave=>$valore){
                
                
    $question[$i] = $_POST[$chiave];
                
    $reponse[$i] = $_POST[$valore];
                echo 
    "$i -> $_POST[$valore]$_POST[$chiave] 
    "
    ;
                
                
    $i++;
            } 
    ma i valori rimangono vuoti, dove sbaglio?

  2. #2

    Re: Recuperare tutti i $_POST (chiavi e valori)

    Originariamente inviato da Mikele Sagitter
    Salve stavo provando a recuperare tutti i *$_POST di una pagina e ho scritto:

    Codice PHP:
        $i 0;
            
    $question['20'];
            
    $reponse['20']; 
            
            foreach (
    $_POST as $chiave=>$valore){
                
                
    $question[$i] = $_POST[$chiave];
                
    $reponse[$i] = $_POST[$valore];
                echo 
    "$i -> $_POST[$valore]$_POST[$chiave] 
    "
    ;
                
                
    $i++;
            } 
    ma i valori rimangono vuoti, dove sbaglio?
    Forse stai confondendo il foreach con il for. Diciamo che il foreach è più raffinato del for e non hai bisogno di dichiarare indici o altro:
    Codice PHP:
    $post $_POST;

    foreach ( 
    $post as $key => $value) {
       echo 
    "Valore $key - Valore: $value";


  3. #3
    Mhm il tuo codice funziona alla perfezione ma non capisco ancora perche il mio non va... é perche tu hai usato una variabile intermediaria?

  4. #4
    mikele il suo funziona perché lui ha usato correttamente il ciclo foreach.
    tu hai usato il ciclo foreach come fosse un while.

    il foreach serve a prenderti tutti i valori presenti in un array ($_POST è un array);
    il while e il for sono due cicli in cui tu praticamente imposti un contatore (nel tuo caso $i) e il valore per il quale la condizione non è più rispettata, e cioé in cui si deve fermare il codice.

  5. #5
    In ogni caso se scrivo:

    Codice PHP:
        foreach ( $post as $key => $value) { 
                
    $question[$i] = $key;
                
    $reponse[$i] = $value;
                
    $i++;
               echo 
    "Chiave: $question[$i] - Valore: $reponse[$i]"
               echo 
    "
    "
    ;
            } 
    Non scrive i valori...insomma gli array non si riempiono


    Edit rettifico: gli arrey si riempiono infatti se li richiamo con $reponse['1'] funziona ma $reponse[$i] no...

  6. #6
    scusami mikele adesso che ho riletto il codice ho capito meglio cosa ti serviva la variabile $i...
    scusa ancora, non intervengo più... lascio la parola ai più esperti... prima credo di aver scritto una sciocchezza ^_______^

  7. #7

    Edit rettifico: gli arrey si riempiono infatti se li richiamo con $reponse['1'] funziona ma $reponse[$i] no...
    prova a scrivere

    print_r ($reponse);

    o anche

    var_dump ($reponse);

    perché credo che l'array $reponse[$i] non esiste, in quanto il foreach assegna ogni volta la variabile $i.

  8. #8
    Mi sono appena accorto di una cosa: neanche il tuo funziona perché nel form precedente le input sono q1 & q2 (con valori per esemio 1 e 4)

    quindi dovrei avere

    Chiave q1 - Valore: 1
    Chiave q2 - Valore: 4

    Invece ho:

    Chiave q1 - Valore: 1
    Chiave q4 - Valore: 4

    In pratica stampo il valore a ogni ciclo...

  9. #9
    Originariamente inviato da Mikele Sagitter
    Mi sono appena accorto di una cosa: neanche il tuo funziona perché nel form precedente le input sono q1 & q2 (con valori per esemio 1 e 4)

    quindi dovrei avere

    Chiave q1 - Valore: 1
    Chiave q2 - Valore: 4

    Invece ho:

    Chiave q1 - Valore: 1
    Chiave q4 - Valore: 4

    In pratica stampo il valore a ogni ciclo...
    Beh quel ciclo che ho scritto io elenca tutto ciò che c'è dentro l'array superglobale $_POST. Fai:
    Codice PHP:
    var_dump($_POST); 
    E incolla ciò che ti viene fuori...

  10. #10
    Ecco la soluzione:
    <?php

    $_POST = array( '1' => 1,
    '2' => 2,
    '3' => 3);


    foreach ( $_POST as $key => $value) {
    $question[$i] = $key;
    $reponse[$i] = $value;

    echo "Chiave: ".$question["$i"]." - Valore: ".$reponse["$i"];
    echo "
    ";
    $i++;
    }
    ?>


    Praticamente fai l'echo dei 2 array dopo l'incremento della i e dopo la valorizzazione, perciò ti risultano vuote

    Dimenticavo puoi fare pure direttamente così:
    <?php

    $_POST = array( '1' => 1,
    '2' => 2,
    '3' => 3);


    foreach ( $_POST as $key => $value) {
    $question[$i] = $key;
    $reponse[$i] = $value;

    echo "Chiave: $question[$i] - Valore: $reponse[$i]";
    echo "
    ";
    $i++;
    }
    ?>
    ciao

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.