Requisições Assíncronas em PHP

Requisições Assíncronas em PHP

Nesse exercício você vai treinar como realizar requisições assíncronas em conjunto com o PHP. Logicamente você não vai realmente usar o PHP para realizar essas requisições, mas você irá fazer requests via javascript para um arquivo em PHP.

O FakeTinder é uma aplicação que fará uma simulação do Tinder real. Nesse exercício seu objetivo é pegar assincronamente a foto e o nome de pessoas que estão “cadastradas na rede social”. Para isso, temos um arquivo PHP que contém as informações dos contatos e as exibe em formato JSON (para facilitar a manipulação no Javascript).      

Arquivo contatos.php



class Contato{
      public $nome;
      public $foto;
}

// Define um array simples contendo nomes.


$c1 = new Contato();
$c1->nome = "Jonas";
$c1->foto = "https://uploads.metropoles.com/wp-content/uploads/2019/01/26090519/aluguel.jpg";


$c2 = new Contato();
$c2->nome = "Mario";
$c2->foto = "https://static1.purepeople.com.br/articles/3/82/71/3/@/1127113-o-rapaz-ja-jogou-em-oslo-na-noruega-950x0-2.jpg";


$c3 = new Contato();
$c3->nome = "Mariana";
$c3->foto = "https://uploads.metropoles.com/wp-content/uploads/2019/01/26090519/aluguel.jpg";



$c4 = new Contato();
$c4->nome = "Luciana";
$c4->foto = "https://midias.agazeta.com.br/2019/10/18/a-apresentadora-luciana-gimenez-80080-article.jpg";


$c5 = new Contato();
$c5->nome = "James";
$c5->foto = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRp2puAs7_gbceETt4TP99jVZcz3LTwhElohHLL0-d5QLwsT9pW9A&s";


$contatos = array();
array_push($contatos, $c1);
array_push($contatos, $c2);
array_push($contatos, $c3);
array_push($contatos, $c4);
array_push($contatos, $c5);


// Pega o parâmetro que veio pela URL (parametro de busca)
$q = $_REQUEST["id"];


// imprime os nomes que podem ser sugestões ou então "sem sugestão" caso não haja nomes para sugerir

echo json_encode($contatos[intVal($q)])
?>

A partir disso você deverá criar um sistema em que cada vez que o usuário clicar em “like” ou “deslike”, o sistema deverá exibir o próximo contato. Lembrando que essa requisição e exibição do próximo deve ser feita 1 por 1 usando requisições assíncronas.    

A interface deve ser bastante simples, veja o exemplo:        

Não fique preocupado com o visual do seu sistema, o importante é você compreender como as requests podem ser feitas de maneira assíncrona e tornar seu site mais dinâmico.

Resposta

Vinicius dos Santos

Apenas um apaixonado por Ciência da Computação e forma com que ela pode transformar vidas!

Deixe uma resposta