前提
PHPでWebサイトを作成しているのですが,file_get_contentsを利用して相対URL,POSTメソッドでのHTTP通信を行っています.そうすると,相対URLで指定した先のPHPファイルにおいて「>」が終了タグとみなされてしまいます.
実現したいこと
MySQLのデータベースへINSERTを行いたいので,「->」を利用できるようにしたい.
絶対URLだとうまくいくのですが,相対URLで実現したく,またこのような状態になっている理由を知りたい.
send.php
1<?php 2$body = array("hoge" => "hoge", "hoge2" => "hoge2"); 3$body = json_encode($body); 4$options = array( 5 "http" => array( 6 "method" => "POST", 7 "header" => "Content-Type: application/json; charset=UTF-8", 8 "content" => $body 9 ) 10); 11echo file_get_contents("receive.php", false, stream_context_create($options));
receive.php
1<?php 2$dsn = "mysql:host=localhost; dbname=○○"; 3$username = "○○"; 4$password = "○○"; 5 6$json = file_get_contents("php://input"); 7$data = json_decode($json, true); 8 9$pdo = new PDO($dsn, $username, $password); 10$sth = $pdo->prepare("INSERT INTO test (test) VALUES (?)"); 11$sth->execute(array($data)); 12$pdo = null;
補足情報(FW/ツールのバージョンなど)
WebサーバはApacheを使用しています.
回答1件