pfcneves 0 Denunciar post Postado Abril 23, 2015 Boas pessoal, Estou a dar os primeiros passos com o PHP e como desafio tenho que fazer um programa que, informados (diretamente) os valores dos lados de um triangulo, ele verifica que tipo de triangulo é, imprime os valores dos lados, o nome do triângulo e mostra a imagem respetiva. O negócio parece bem simples e já fiz algo semelhante com javascript... Recorri a if e elseif para obter o resultado do nome do triângulo e o mesmo para obter a imagem que deverá surgir logo após o nome... mas a imagem não surge, aparece apenas o icon de imagem inexistente... e já tentei, pelo mesmo comando imprimir a imagem, mas sem exito... Alguém me pode dizer onde estou a errar??? Abraço e obrigado. Fica o código que desenvolvi: <?php $lado1 = 12; $lado2 = 12; $lado3 = 12; if (($lado1 == $lado2) && ($lado1 == $lado3)) $classificacao = "EQUILÁTERO"; elseif ((($lado1 == $lado2) && ($lado1 != $lado3)) || (($lado1 == $lado3) && ($lado1 != $lado2)) || (($lado2 == $lado3) && ($lado2 != $lado1))) $classificacao = "ISOSCELES"; elseif (($lado1 != $lado2) && ($lado1 != $lado3) && ($lado2 != $lado3)) $classificacao = "ESCALENO"; echo "TRIÂNGULO:</p>"; echo "LADO 1 = $lado1:</p>"; echo "LADO 2 = $lado2:</p>"; echo "LADO 3 = $lado3:</p>"; echo "CLASSIFICAÇÃO: TRIÂNGULO $classificacao "; if ($classificacao == "EQUILÁTERO") print "<img src='/imagens/equilatero'>"; elseif ($classificacao == "ISOSCELES") print "<img src='/imagens/isosceles'>"; elseif ($classificacao == "ESCALENO") print "<img src='/imagens/escaleno'>"; ?> Compartilhar este post Link para o post Compartilhar em outros sites
Criquio 19 Denunciar post Postado Abril 23, 2015 Olá! Acredito que esteja faltando colocar a extensão das imagens. Compartilhar este post Link para o post Compartilhar em outros sites
pfcneves 0 Denunciar post Postado Abril 23, 2015 Olá, Tens razão... estive a fazer umas experiências e quando copiei o código esqueci de colocar as extensões... mas está assim e não funciona: if ($classificacao == "EQUILÁTERO") print "<img src='/imagens/equilatero.jpg'>"; elseif ($classificacao == "ISOSCELES") print "<img src='/imagens/isosceles.jpg'>"; elseif ($classificacao == "ESCALENO") print "<img src='/imagens/escaleno.jpg'>"; Compartilhar este post Link para o post Compartilhar em outros sites
Criquio 19 Denunciar post Postado Abril 23, 2015 Você quer exibir a imagem na tela ou imprimir em papel? Para exibir na tela, tente o echo no lugar do print. E também, caso as imagens estejam na mesma pasta da página, tente retirar a primeira barra antes de imagens e se estiver um nível acima da pasta da página, tente colocar .. antes da barra: echo "<img src='../imagens/escaleno.jpg'>"; Compartilhar este post Link para o post Compartilhar em outros sites
pfcneves 0 Denunciar post Postado Abril 23, 2015 Quero imprimir na tela... mas pelo que li, tanto posso usar o echo como o print para isso. No entanto, testei com o echo e o resultado é o mesmo... a imagens estão no diretório imagens (mas tb já tentei com elas na mesma pasta que o arquivo PHP)... Teoricamente está tudo certo, não é??? ou está a escapar-me algo? Compartilhar este post Link para o post Compartilhar em outros sites
Criquio 19 Denunciar post Postado Abril 23, 2015 Mas o diretório imagens está no mesmo diretório da página? Se sim, tentou retirando a barra como eu mencionei? print "<img src='imagens/equilatero.jpg'>"; Também verifique se não tem nenhuma letra maiúscula no nome ou na extensão da imagem. Muitas vezes, se o nome não for exatamente igual, não funciona. Compartilhar este post Link para o post Compartilhar em outros sites
pfcneves 0 Denunciar post Postado Abril 23, 2015 Valeu amigo... Está funcionando... Retirei a barra, e continuou com o mesmo erro... mas agora vi o "furo" básico... o diretório estava com nome imagnes (erro de digitação)... Agora está a funcionar perfeitamente... Muito obrigado. Compartilhar este post Link para o post Compartilhar em outros sites
Criquio 19 Denunciar post Postado Abril 23, 2015 Ótimo. Agora, uma dica. Se, ao invés de "EQUILÁTERO", "ISOSCELES" e "ESCALENO", você colocar os nomes das imagens na variável $classificacao, ou seja, colocar "equilatero", "isoceles" e "escaleno", não precisará do if() no final, bastando, nesse caso, passar o valor da $classificacao direto: print "<img src='imagens/" . $classificacao . ".jpg'>"; Isso deixaria o código mais limpo. Compartilhar este post Link para o post Compartilhar em outros sites