Em algumas situações precisamos passar dados para o servidor, seja para um consulta em um banco de dados, ou para gravar alguma informação.
O JSON resolve muito bem o transito destes dados onde podemos utilizar parâmetros na URL e tratarmos com um $_GET do lado do servidor para que possamos ler os valores trocados entre o app e o web service.
O código a seguir exemplifica este transito de dados:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Enviando dados com JSON</title>
<!--[if lt IE 9]>
<script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
</head>
<body>
<h1>Passando dados para o servidor!</h1>
<hr>
<script>
function ChamadaJSON(num1, num2)
{
// conecta ao servidor
var xmlhttp = new XMLHttpRequest();
/* colocar na url os valores que quer passar para o servidor.
seu arquivo PHP deverá capturar os dados usando $_GET[];
*/var url = "http://appcinema.esy.es/mobile/json_post.php?num1=" + num1 + "&num2=" + num2;
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState == 4 && xmlhttp.status == 200)
{
ConectaServidor(xmlhttp.responseText);
}
}
xmlhttp.open("GET", url, true);
xmlhttp.send();
alert("Gravado com sucesso no servidor");
}
function ConectaServidor(response)
{
var dados = JSON.parse(response);
}
</script>
<input type="number" id="num1">
<input type="number" id="num2">
<button onclick="ChamadaJSON(document.getElementById('num1').value, document.getElementById('num2').value)"> enviar para o servidor</button>
<hr>
Acesse o resultado em: <br>http://appcinema.esy.es/mobile/registro.txt
</body>
</html>
PHP do lado do servidor
O código PHP que se encontra no servidor grava os dados recebidos em um arquivo TXT e possui o seguinte código:
http://appcinema.esy.es/mobile/registro.txt
<?php
$total = $_GET['num1'] + $_GET['num2'];
$fp = fopen("registro.txt", "w+");
$escreve = fwrite($fp, "$total");
fclose($fp);
?>
Download
O download do arquivo HTML pode ser baixado aqui jsonpost