I am attempting to send data from c# to PHP using the JSON.
I see 'NULL' on the PHP page.
Here is my c# HTTP request which should send json request to PHP webpage.
user user = new user();
{
user.firstname = "aaaa";
user.secondname = "aaaaaaaaaaa";
user.email = "aaa";
user.phonenumber = "aaa";
};
string json = JsonConvert.SerializeObject(user);
HttpWebRequest request = WebRequest.Create("https://localhost/test.php") as HttpWebRequest;
request.ContentType = "application/json";
//request.Accept = "application/json, text/javascript, */*";
request.Method = "POST";
using (StreamWriter writer = new StreamWriter(request.GetRequestStream()))
{
writer.Write(json);
}
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
Stream stream = response.GetResponseStream();
string json1 = "";
using (StreamReader reader = new StreamReader(stream))
{
while (!reader.EndOfStream)
{
json1 += reader.ReadLine();
}
}
DisplayAlert("Alert", json1, "OK");
I have PHP "test.php" which has the following code.
<?php
echo json_encode($_POST);
?>
When the c# function run; I don't get any errors.
Then I refresh webpage and it says "NUll"
What I would like to achieve is c# to send data using JSON using REST API (HTTP Request).
Then using PHP; I will get the data and save in MySql Table.
But PHP just shows 'Null'
What I am doing wrong.
Thank you
EDIT
The DisplayAlert which I see in c# shows the string which it passes to PHP.
c# alert of string which it passes to PHP
PHP webpage shows string (0)
PHP Code
//Receive the RAW post data.
$content = file_get_contents("php://input");
$obj = json_encode($content);
$insert_stmt = $mysqli_scs->prepare("INSERT INTO test (name,address) VALUES (?,?)");
$name =$content->{'name'};
$address = $obj->{'address'};
$insert_stmt->bind_param("ss", $name, $address);
//Execute the statement
$insert_stmt->execute();