Problemas con isset y if
Publicado por Tomas (24 intervenciones) el 14/10/2014 20:53:43
Tengo el siguiente código(es una calculadora), le introduzco los valores por la barra de enlaces del navegador. Si yo escribo :
nombredelfichero.php?operacio=(nopongonada)&primer=1&segon=2 deberia saltar al ultimo if i decir "no has escrito el tipo de operacion " pero no lo dice.
alguien ve el error?
nombredelfichero.php?operacio=(nopongonada)&primer=1&segon=2 deberia saltar al ultimo if i decir "no has escrito el tipo de operacion " pero no lo dice.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8"/>
<title> </title>
</head>
<body>
<?php
echo "P4E3: Calculadora amb valors passats per GET.
<br> Defineix els valors(operacio//suma/resta/divisio/multiplicacio//,primer,segon) a la barra d'enllaços <br>";
if((isset($_GET["operacio"]) && is_string($_GET["operacio"])) && (isset($_GET["primer"]) && is_numeric($_GET["primer"]) ) && (isset($_GET["segon"]) && is_numeric($_GET["segon"]))){
if(is_string($_GET["operacio"])&& $_GET["operacio"]=="suma"){
$_fResultado = $_GET['primer'] + $_GET['segon'];
echo "El tipus d'operació es $_GET[operacio] <br>";
echo "El primer operand es $_GET[primer] <br>";
echo "El segon operand es $_GET[segon] <br>";
echo "$_GET[primer] + $_GET[segon] = $_fResultado";}
else{
if(is_string($_GET["operacio"])&& $_GET["operacio"]=="resta"){
$_fResultado = $_GET['primer'] - $_GET['segon'];
echo "El tipus d'operació es $_GET[operacio] <br>";
echo "El primer operand es $_GET[primer] <br>";
echo "El segon operand es $_GET[segon] <br>";
echo "$_GET[primer] - $_GET[segon] = $_fResultado";}
else{
if(is_string($_GET["operacio"])&& $_GET["operacio"]=="divisio"){
$_fResultado = $_GET['primer'] / $_GET['segon'];
echo "El tipus d'operació es $_GET[operacio] <br>";
echo "El primer operand es $_GET[primer] <br>";
echo "El segon operand es $_GET[segon] <br>";
echo "$_GET[primer] / $_GET[segon] = $_fResultado";}
else{
if(is_string($_GET["operacio"])&& $_GET["operacio"]=="multiplicacio"){
$_fResultado = $_GET['primer'] * $_GET['segon'];
echo "El tipus d'operació es $_GET[operacio] <br>";
echo "El primer operand es $_GET[primer] <br>";
echo "El segon operand es $_GET[segon] <br>";
echo "$_GET[primer] * $_GET[segon] = $_fResultado";}}}}}
else{
if(!isset($_GET["operacio"])){
echo "No has definit el tipus d'operació, no puc continuar";}
exit();}
?>
</body>
</html>
alguien ve el error?
Valora esta pregunta


0