Ir ao conteúdo

Posts recomendados

Postado

Tenho uma dúvida ha possibilidade de eu transformar um resultado do mysql que visualizo no meu php em letras no caso o resultado e numero.

 

Veja um pouco do codigo:

 

$connect = mysql_connect($host,$user,$pass) OR DIE("'Can't connect with $host"); mysql_select_db($characters,$connect) or die(mysql_error());  $result = mysql_query("SELECT * FROM `characters` ORDER BY `totalKills` DESC LIMIT 0 , 100 ");?><font color="#FBFBEF"><table align=center cellpadding="0" cellspacing="0" border="0" width=100%><thead><td width="4%"><center><font color="black">Posi.</font></center></td><td width="16%"><font color="black">Nick</font></td><td width="16%"><font color="black">Race</font></td><td width="16%"><font color="black">Classe</font></td><td width="4%"><font color="black">Matou</font></td><td width="4%"><center><font color="black">Level</font></center></td><td width="4%"><center><font color="black">Online</font></center></td><td width="4%"><center><font color="black">Guild</font></center></td></thead><tbody><?phpwhile($rows = mysql_fetch_object($result)) { $i++; $name = $rows->name; $guild = $rows->guild;$guild = $rows->guild;$Total_Kills = $rows->totalKills;$level = $rows->level; $online = $rows->online == 1 ? '<font color="#04B404">On</font>' : '<font color="#DF0101">.</font>';$guild = $rows->guild; echo " <tr><td><center>",$i,"</center></td><td><b>",$name,"</b></td><td><b>",$race,"</b></td><td><b>",$classe,"</b></td><td><center>",$Total_Kills,"</center></td><td><center>",$level,"</center></td><td><center>",$online,"</center></td><td><center>",$guild,"</center></td>

Básicamente a $race captura numeros, do qual cada numero representa  uma raça quero substituir o numero 7 por uma raça tipo humano, 11 por orc e por ai vai. são varios numeros dentro da tabela race do banco de dados.

 

 

 

no caso o numero 7 que vem como resultado quero que vire humano, o 8 orc ..

  • Moderador
Postado

@leonardofan

Acredito que já tenha lhe explicado isso em outro tópico.

 

Na sua tabela race  precisa ter pelo menos 2 campos.  ID  e race.

O campo ID é numérico único, por isso ele deve ser chave primária.

O campo race deve ser VARCHAR ou seja, vai receber um valor em texto..

 

O valor do campo ID é quem identifica que cada registro é.

 

então se tu tens na tabela assim:

 

ID   race

7    Humano

11  Orc

 

o valor que terás que trazer na consulta é race e não o número.

 

o valor do ID só vai ser útil quando você fazer um select baseado no número por exemplo:

SELECT race FROM race WHERE ID = 7

Vai mostrar o valor "Humano"

 

Então voltamos para aquela história que você NÃO entendeu.. de que precisa de RELACIONAMENTOS entre as tabelas e usar a cláusula INNER JOIN para poder dizer que tabela e qual campo  pertence .

Ou seja, precisas urgentemente primeiro entender o porque de usar a chave estrangeira e chave primaria.. onde na tabela characters  VAI ter que ter uma chave estrangeira para receber da tabela race.

Estou fazendo você entender isso. 

Respondendo sua pergunta inicial:  

 

 

 

ha possibilidade de eu transformar um resultado do mysql que visualizo no meu php em letras no caso o resultado e numero.

NÃO. não há possibilidade disso porque é errado. e nunca vai funcionar. Uma vez que o valor é do tipo INT nunca será uma do tipo String.

 

E já logo adianto, seu banco de dados está mal feito e não vai funcionar de acordo com o que você quer.. a menos que você entenda o que eu estou já explicando desde outro tópico.

 

Fiz um exemplo bem simples de como TEM que ser. e não tem outro jeito a não ser assim.

 

Primeiro de tudo veja o modelo ER(entidade-relacionamento) 

VLcPBQW.png

Respeitando as normas formais, a tabela é dividida em várias onde para cada coisa tem um propósito. Veja que 3 das tabelas só tem 2 campos.. ID do tipo INT e outro campo do tipo VARCHAR.

A tabela characters é que controlará as consultas.  veja que os campos quem tem uma chave amarela são a chave primária. são valores único e numéricos.. iniciados pelo 1.

os campos que estão com a "tralha" (jogo da velha), são as chaves estrangeiras. todas elas são do tipo INT.. por que elas recebem o valor ID chave primária de cada tabela.

 

Agora mostrarei as tabelas populadas e como elas ficam:

97iOrju.jpg

Veja que nas tabelas classes, guild e race o segundo campo são valores em textos.

Na tabela characters o único campo em texto é o name.. que seria designado para o Nome dos personagens.

já os campos ID_race, ID_classes e ID_guild são numéricos.  Como eles são chaves estrangeiras relacionada com cada tabela... elas recebem o valor de cada registro... veja que o ID_race é 1,  então ele é um Humano.

 

Tá e como faço para trazer os dados que eu quero?

 

Bom como eu disse antes.. precisamos fazer uma consulta utilizando a clausula INNER JOIN... então fica assim:

SELECT characters.name,       race.race,       classes.classe,       characters.totalKills,       characters.level,       characters.online,       guild.guildFROM charactersINNER JOIN classes ON classes.ID = characters.ID_classeINNER JOIN race ON race.ID = characters.ID_raceINNER JOIN guild ON guild.ID = characters.ID_guild   

Veja que eu coloquei o nome de cada tabela antes de cada campo.. para o mysql identificar de qual tabela estamos falando.

no FROM, a tabela é characters.. por que é ela quem vai controlar.

Veja que temos 3 INNER JOIN..  uma para cada tabela...  então executando essa consulta teremos este retorno:

1cbcJBS.png

 

Exatamente como você quer, no campo race traz o nome da raça e não um número.

o mesmo vale para o campo classe e para o campo guild.

 

e SIM certamente você terá que refazer o banco... não tem choro... porque se não fizer assim.  NUNCA vai funcionar.. nem aqui e nem na china... apesar dos orientais serem ninjas... eles também não conseguiram se não fizer desta forma que eu falei.

 

Agora a criação do mesmo.. eu deixo para você..  e deixo aqui duas video aulas que gravei uma vez ensinando a criar um banco de dados,  relacionamentos entre uma ou várias tabelas  exatamente como eu mostrei mais acima.

PS: eu não tinha um microfone para falar.. então a video aula é muda... preste bastante a atenção em cada passo que eu faço.. assim você vai aprender

 

Parte 1

 

Parte 2

 

Com isso acredito vai conseguir fazer...  se ainda não conseguir.. bom.. aí só milagre.. porque mais explicado que isso.. não existe!

Desculpe se o post é longo mas.. preciso que você entenda tudo o que eu venho já te dizendo...  e é apenas desta forma que vai funcionar.

  • Curtir 1
Postado

Obrigado dif, acredito que atenção maior no meu caso não vou ter seus videos são esclarecedores aprendi coisas que vi nos códigos, relacionamentos, ate mesmo a criação de tabelas corretamente, o meu único problema que não creio que seja mais um tão grave, e que o seu relacionamento entendi 100% indices etc.. porém o banco de dados que uso e um da trinitycore.org é uma desenvolvedora não fiz do 0 o meu banco de dados que é de world of warcraft, que tenho um servidor, a questão é se eu tenho um banco de dados criado, com as especificações que você viu, ai eu crio indices, não sei se to explicando e escrevendo na ordem correta, eu faço a ligação entre a raça e outra tabela no caso as imagens da raça, como no processo do video, eu ainda não tenho conhecimento para isso, portante eu vou ver mais seus videos posta dúvidas aqui caso eu tenha e muito obrigado!!!!

 

fui mal recepcionado em outros fóruns por ter conta criada agora, e não haver imagens, acho que privacidade é o que qualquer um procura no dia de hoje não quero ver nada tão relacionado no google, o que não é problema no seu caso é moderador enfim esta me ajudando tremendamente aposto que com relação a minhas dúvidas e seus ensinos vou posta algo mais concreto ao menos vou tenta rs thx!

@dif

Se possível da uma atenção aqui também: http://forum.clubedohardware.com.br/forums/topic/1135746-sistema-de-login/#entry6245435

Visitante
Este tópico está impedido de receber novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Ebook grátis: Aprenda a ler resistores e capacitores!

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!