2014-04-29 76 views
-1

我新的PHP和被卡住应向HTML表单取值的函数,计算周长计算周长从形式

<form method="post" Action="sida4berakna.php">  
    <fieldset> 
     <legend>Mata in två värden för att beränka omkretsen</legend>  
     <p><label>Längd: <input name="langd" type="text"></label></p> 
     <p><label>Bredd: <input name="bredd" type="text"></label></p>  
     <input type="Submit" value="BERÄKNA"> 
    </fieldset> 
</form> 

,这是我的PHP脚本

if(!empty($_GET["langd"])) { 
    $langd = $_GET["langd"]; 
} 
else{ 
    $langd = NULL; 
} 

if(!empty($_GET["bredd"])) { 
    $bredd = $_GET["bredd"]; 
}  
else{ 
    $bredd = NULL; 
} 

function beraknaOmkrets($langd = "langd", $bredd = "bredd") { 
    return ($langd * $bredd)/2; 
} 

echo beraknaOmkrets(); 

结果我得到的屏幕上点击按钮后为0

+6

表单使用'方法= “后”',但你的脚本访问'$ _GET'阵列 – knittl

回答

0
if(!empty($_POST["langd"])) { 
    $langd = $_POST["langd"]; 
} 
else{ 
    $langd = NULL; 
} 

if(!empty($_POST["bredd"])) { 
    $bredd = $_POST["bredd"]; 
} 

else{ 
    $bredd = NULL; 
} 


function beraknaOmkrets($langd = "langd", $bredd = "bredd") { 

    return ($langd * $bredd)/2; 
} 

echo beraknaOmkrets($langd,$bredd); 
+0

啊,这么容易犯的错误!感谢您的快速回答! – DexterTheCat

0

更改GET到POST:

if(!empty($_POST["langd"])) { 
    $langd = $_POST["langd"]; 
} 
else{ 
    $langd = NULL; 
} 

if(!empty($_POST["bredd"])) { 
    $bredd = $_POST["bredd"]; 
} 

else{ 
    $bredd = NULL; 
} 


function beraknaOmkrets($langd = "langd", $bredd = "bredd") { 

    return ($langd * $bredd)/2; 
} 

echo beraknaOmkrets(); 
0
if(!empty($_GET["langd"])) { 
$langd = $_GET["langd"]; 
} 
else{ 
    $langd = NULL; 
} 

if(!empty($_GET["bredd"])) { 
$bredd = $_GET["bredd"]; 
} 

else{ 
    $bredd = NULL; 
} 

应该是POST,而不是GET。
至极给了我们:

if(!empty($_POST["langd"])) { 
    $langd = $_POST["langd"]; 
    } 
    else{ 
     $langd = NULL; 
    } 

    if(!empty($_POST["bredd"])) { 
    $bredd = $_POST["bredd"]; 
    } 

    else{ 
     $bredd = NULL; 
    } 

还确定youre功能将这两个变量为整数,使用INTVAL。
HREF:http://www.php.net/manual/en/function.intval.php
至极给了我们:

function beraknaOmkrets($langd = "langd", $bredd = "bredd") 
{ 
    return ((intval($langd) * intval($bredd))/2); 
}