web-dev-qa-db-ja.com

プロセスAxios POST in PHP

POSTリクエストを送信して、PHPファイルを処理し、データベースにデータを保存します。$ _POSTは何をしようとも空のままです。

誰かが投稿リクエストを送信するのを手伝ってくれて、それを処理するのを手伝ってくれますか?

私のaxiosリクエスト:

// Performing a POST request
axios.post('dev/api/post.php',{ text: text, unk: unk})
  .then(function(response){
      console.log(response);
}).catch(function (error) {
      console.log(error);
});  

そして、これは私がPHPで試したものです。いくつかのコードはコメントアウトされています。

if(isset($_POST) && !empty($_POST)){
/*  
$jsonReceiveData = json_encode($_POST);
$json_output = json_decode($jsonReceiveData);
$task = $json_ouput->text;
$uniquekey = $json_output->unk;
*/
echo $_POST;
/*
$stmt = $pdo->prepare("INSERT INTO todo (id, tekst, uniquekey) VALUES ('', :tekst, :unk)");
$stmt->bindParam(':unk', '1');
$stmt->bindParam(':tekst','testing');
$stmt->execute();
*/

}

解決:

$data = json_decode(file_get_contents("php://input"), true);
$task = $data['text'];

オブジェクトはphp:// inputで見つかりました

15
Laurens Mäkel

ユーザーはphp:// inputでオブジェクトを「見つける」ことを解決しました

$data = json_decode(file_get_contents("php://input"), true);
$task = $data['text'];

[〜#〜] steel [〜#〜] で指摘したように、PHPではなく、React =またはAxios。

8
Felipe G.