Php + unity
3 participantes
Página 1 de 1
Php + unity
Consigo receber uma informaçao por php e tratar para ela ser uma bool em c#.
Teria alguma maneira de um php ser enviado para outro.Exemplo recebe.php / envia.php alguem usa o envia para poder mandar para o recebe.php informaçoes e quero pegar o recebe e enviar para o c# como uma bool.
Teria alguma maneira de um php ser enviado para outro.Exemplo recebe.php / envia.php alguem usa o envia para poder mandar para o recebe.php informaçoes e quero pegar o recebe e enviar para o c# como uma bool.
Chilinger- MembroAvançado
- PONTOS : 4092
REPUTAÇÃO : 42
Idade : 30
Respeito as regras :
Re: Php + unity
Entre os arquivos php você pode usar as variáveis globais $_POST, $_GET ou usar sessões.
Pra enviar pro Unity, eu costumo transformar o retorno de uma função em Json e trato no Unity.
Você pode se comunicar com o php usando wwwForms e as suas funções php retornam um Json. Daí é só tratar os dados direto na Unity.
Me perdoe se soou um pouco confuso, eu sou melhor fazendo do que explicando.
Pra enviar pro Unity, eu costumo transformar o retorno de uma função em Json e trato no Unity.
Você pode se comunicar com o php usando wwwForms e as suas funções php retornam um Json. Daí é só tratar os dados direto na Unity.
Me perdoe se soou um pouco confuso, eu sou melhor fazendo do que explicando.
Re: Php + unity
Artplayer,boa tarde
Essa é exatamente a minha duvida !
voce poderia ensinar ou dar um exemplo de como fazer gravação e leitura na Unity de um aquivo json?
Essa é exatamente a minha duvida !
voce poderia ensinar ou dar um exemplo de como fazer gravação e leitura na Unity de um aquivo json?
enio55- Iniciante
- PONTOS : 3304
REPUTAÇÃO : 4
Respeito as regras :
Re: Php + unity
Art eu entendi mas poderia fazer aq um codigo qualquer em php e WWW fazer ele se transformar em bool em c#.
Chilinger- MembroAvançado
- PONTOS : 4092
REPUTAÇÃO : 42
Idade : 30
Respeito as regras :
Re: Php + unity
Chilinger escreveu:Art eu entendi mas poderia fazer aq um codigo qualquer em php e WWW fazer ele se transformar em bool em c#.
Primeiro eu peço desculpas na resposta tardia, é que eu andei focado nos Shaders.
Um exemplo "basicão", lembrando que você deve ter o Apache ou ISS já configurado e tudo mais. Aqui fiz o teste em um Wamp mesmo.
InventarioPlayer.cs
- Código:
using UnityEngine;
using System.Collections;
using System.Collections.Generic;
[System.Serializable] public class InventarioPlayer : MonoBehaviour {
public string URL = "http://127.0.0.1/testejson.php";
public ListaJogador MinhaLista = new ListaJogador ();
[System.Serializable] public class Inventario{ // A estrutura do Json recebido, deve ser a mesma da classe.
public int Id;
public string Nome;
public int Quantidade;
}
[System.Serializable] public class ListaJogador{ // O nome da lista, deve ser o mesmo do item pai do retorno Json.
public List<Inventario> ItemInv;
}
//Envia os dados...
public IEnumerator getDadosPlayer(string funcao){
WWWForm formulario = new WWWForm();
//Adiciona os campos ao formulário que será enviado.
formulario.AddField ("funcao", funcao);
WWW retorno = new WWW (URL, formulario);
yield return retorno;
//
if (!string.IsNullOrEmpty (retorno.error)) {
Debug.Log ("Erro durante o envio dos dados: " + retorno.error);
} else {
Debug.Log (retorno.text);
JsonUtility.FromJsonOverwrite (retorno.text,MinhaLista);
Debug.Log (MinhaLista.ItemInv.Count);
}
}
void Start(){
StartCoroutine(getDadosPlayer ("getInventario"));
}
}
testejson.php
- Código:
<?php
$dados = $_POST;
#Verifica se há itens vindos através de POST.
if(count($dados)!==0){
#Verifica se é um chamado para uma função.
if(array_key_exists("funcao", $dados)){
switch ($dados["funcao"]) {
case 'getInventario':
/* Neste caso, estamos montando um array e transformando em Json para retornar para o Unity.
* O array pode ser montado a partir de dados vindos de uma consulta ao banco de dados ou oque você quiser...
* Coloquei um Array Multidimensional para mostrar como transformar o array Json em uma List no Unity, caso queira trabalhar com mais dados
* como inventário, ect...
*/
$Inventario["ItemInv"][0]["Id"] = 1;
$Inventario["ItemInv"][0]["Nome"] = "Madeira";
$Inventario["ItemInv"][0]["Quantidade"] = "200";
$Inventario["ItemInv"][1]["Id"] = 2;
$Inventario["ItemInv"][1]["Nome"] = "Galho";
$Inventario["ItemInv"][1]["Quantidade"] = "456";
echo json_encode($Inventario);
break;
default:
break;
}
}
}
?>
Json Retornado:
- Código:
{"ItemInv":[{"Id":1,"Nome":"Madeira","Quantidade":"200"},{"Id":2,"Nome":"Galho","Quantidade":"456"}]}
Imagem:
Referências:
https://docs.unity3d.com/ScriptReference/WWWForm.html
https://docs.unity3d.com/ScriptReference/JsonUtility.html
Sei que já deve ter chegado tarde, mas de qualquer forma pode servir como referência.
Abraços e sucesso!
Re: Php + unity
Entao mano eu estou usando unity 4.6 por que a 5 geralmente da problema e na 4.6 ela nao reconhece o JsonUtility.O que vc fez foi apenas enviar minha duvida e como receber do php uma bool.No caso seria o caminho inverso da coisa.
Chilinger- MembroAvançado
- PONTOS : 4092
REPUTAÇÃO : 42
Idade : 30
Respeito as regras :
Re: Php + unity
Chilinger escreveu:Entao mano eu estou usando unity 4.6 por que a 5 geralmente da problema e na 4.6 ela nao reconhece o JsonUtility.O que vc fez foi apenas enviar minha duvida e como receber do php uma bool.No caso seria o caminho inverso da coisa.
Antes do JsonUtility eu usava o SimpleJson, acho até mais simples. Quanto ao bool eu tinha entendido errado, foi mal mesmo.
Pra enviar um bool pro php, você cria um campo no WWWForm, pode ser uma string mesmo "true", e trata direto no php. Ou até mesmo 0 ou 1. Ou "verdadeiro" e "falso".... Eu nunca tentei enviar um tipo bool direto via POST, mas na teoria deve funcionar também. Vou até testar aqui.
Re: Php + unity
Entao poderia fazer um tutorial do SimplesJson.
Mano eu estou enviando meu nome/nomedopersonagem/pontos para o banco.
como consigo receber apenas o nomedopersonagem do banco.
https://www.schultzgames.com/t3029-json-esta-recebendo-um-valor-mas-devolve-outro#20997
Mano eu estou enviando meu nome/nomedopersonagem/pontos para o banco.
como consigo receber apenas o nomedopersonagem do banco.
https://www.schultzgames.com/t3029-json-esta-recebendo-um-valor-mas-devolve-outro#20997
Chilinger- MembroAvançado
- PONTOS : 4092
REPUTAÇÃO : 42
Idade : 30
Respeito as regras :
Re: Php + unity
Tem um exemplo de uso do SimpleJson aqui , é quase a mesma coisa, só que mais simples.
No caso de pegar apenas um campo, do lado do php, você faria uma consulta ao banco pegando somente o campo que você quer e montando o array. Em seguida um echo json_encode($seuArray);
Eu não sou bom em fazer tutoriais, mas se você quiser eu posso subir as classes php pra manipular dados dos usuários e inventário pra você dar uma olhada. Não está completo de tudo, mas pode servir como referência.
O SimpleJson é bem simples de se usar e tem uma Wiki aqui.
No caso de pegar apenas um campo, do lado do php, você faria uma consulta ao banco pegando somente o campo que você quer e montando o array. Em seguida um echo json_encode($seuArray);
Eu não sou bom em fazer tutoriais, mas se você quiser eu posso subir as classes php pra manipular dados dos usuários e inventário pra você dar uma olhada. Não está completo de tudo, mas pode servir como referência.
O SimpleJson é bem simples de se usar e tem uma Wiki aqui.
Re: Php + unity
Poderia fazer para mim e essa busca pois nao consigo ver como eu conseguiria buscar sem passar nada.E o json se vc poder tambem fazer o codigo de como faz ele transforma em json e como eu devo passar para ele a informaçao do id da minha array.
Vi o que vc fez entao eu ja fiz o meu login e senha e com ele que eu tenho que receber todas as informaçoes se poder me add no skype e me tira essa duvida por la agradeço chilinger2.
Vi o que vc fez entao eu ja fiz o meu login e senha e com ele que eu tenho que receber todas as informaçoes se poder me add no skype e me tira essa duvida por la agradeço chilinger2.
Chilinger- MembroAvançado
- PONTOS : 4092
REPUTAÇÃO : 42
Idade : 30
Respeito as regras :
Tópicos semelhantes
» [Unity upgrade] - Notas de atualização da Unity 2017! (Sucessor do Unity 5.6)
» Qual versão do JDK, NDK E SDK o Unity Hub recomenda para Unity 2019.2.12f1 (64-bit)?
» Unity trava com tela preta ao editar textura do Terrain - Unity 5.6.3p2
» [UNITY] Sera que em 2016 tenha Unity 6 ???
» [TUTORIAL] Como colocar videos na unity 3D [UNITY 5]
» Qual versão do JDK, NDK E SDK o Unity Hub recomenda para Unity 2019.2.12f1 (64-bit)?
» Unity trava com tela preta ao editar textura do Terrain - Unity 5.6.3p2
» [UNITY] Sera que em 2016 tenha Unity 6 ???
» [TUTORIAL] Como colocar videos na unity 3D [UNITY 5]
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos