2015-07-26 7 views
7

Sto provando a leggere una richiesta di posta inviata da un client usando PHP se passano le variabili o meno. Quello che voglio è leggere i dati del post. Ho provato ad utilizzare, quanto segue senza alcuna fortuna:Come leggere la richiesta di post senza conoscere le variabili passate?

echo file_get_contents('php://input'); 

ho cercato di inviare la richiesta per posta http://posttestserver.com/ ei rendimenti HTTP Post200 e mostra i dati di post inviati.

Come faccio a fare questo usando php?

+1

'echo file_get_contents ('php: // input') ; 'funziona per me. Cosa ti aspettavi di vedere e cosa hai ottenuto invece? – Barmar

risposta

12

È possibile leggere i dati del post dalla variabile $_POST. Se volete sapere quali chiavi la matrice tiene, utilizzare array_keys():

$postKeys = array_keys($_POST); 

In alternativa, è possibile utilizzare per eseguire la scansione foreach la matrice:

foreach ($_POST as $key => $value) { 
    echo "Key: $key; Value: $value\n"; 
} 
+0

Ho provato a inviare una richiesta di posta da un modulo e visualizza i dati. Ma sto inviando una richiesta di posta da un dispositivo elettronico (un sensore) e non posso vedere i dati. – h4kl0rd

+0

Non so quale sia il dispositivo, ma assicurati di inviare effettivamente una richiesta POST e non GET. Si potrebbe anche provare a sostituire '$ _POST' con' $ _REQUEST'. Questo è un array associativo che contiene il contenuto di '$ _GET',' $ _POST' e '$ _COOKIE'. – Aviram

+0

Grazie a @aviram. Lasciami lavorare su di esso. – h4kl0rd

Problemi correlati