2016-05-16 16 views
-1

我有一個基本的形式在我的index.html頁面上詢問用戶輸入的號碼。如下圖所示:然後形式數據到PHP變量

<html>  
<form action="display.php" method="post"> 
Number: <input type="text" name="number"> 
<input type="submit"> 
</form> 
</html> 

PHP文件是要檢查的人數對如果一個函數else語句和回聲如果一個有效的數字或沒有。如下圖所示:

<?php 
$number = $_POST["number"]; 

function numbercheck($number) { 
//if else statements 
} 

numbercheck(); 
?> 

所以我的問題是,這是形式的數據分配給PHP變量,因此可以再在函數中使用還是我完全做錯了正確的方法。

+5

你需要的變量也傳遞給函數調用和返回的東西。 –

+1

您需要將它像:'numbercheck($ numbertocheck);' – Panda

+0

應後變量傳遞給調用函數'' –

回答

1

這裏是讓PHP中發佈的數據變量的正確方法,使用isset()empty()分配$_POST['number']給一個變量之前,這會防止你不確定的錯誤..

<?php 
$number=''; 
if(!empty($_POST["number"])) 
{ 
    $number = $_POST["number"]; 
    numbercheck($number); 
} 


function numbercheck($number) 
{ 
//if else statements 
} 
?> 
您想將其更改爲類,並調用函數在另一個文件

第二個選項,然後

在你class.php文件:

<?php 
    class Numbers { 

     /* Member function*/ 
     function numbercheck($number) 
     { 
     //if else statements 
     } 
    } 
?> 

在你的第二個文件index.php

<?php 
include('class.php'); 
$Numbers = new Numbers; ///Here we have created new object 

if(!empty($_POST["number"])) 
{ 
    $number = $_POST["number"]; 
    $Numbers->numbercheck($number); ///access member function 
} 
?> 
+1

'isset($ _ POST [「number」])&&'不需要。 '!empty($ _ POST [「number」])'就足夠了。 –

+0

是的,沒有必要同時使用兩者。我已經嘗試過了,只有'空'就足夠了。謝謝@ Fred-ii- –

+0

你在'numbercheck()'函數中寫了什麼? @david –

2

只是傳遞$號功能:

<?php 
$number = $_POST["number"]; 
numbercheck($number); 


function numbercheck($number) { 
//if else statements 
} 
?> 
0

正如我在評論中所指出,需要將變量傳遞給函數:

$number = $_POST["number"]; 

numbercheck($number); 

function numbercheck($number) { 
    //if else statements 

return true; 
} 
1

在你的PHP代碼,你必須通過$number變量才能發揮作用。像這樣:

<?php 
    $number = $_POST["number"]; 

    // this is only declaration, not call 
    function numbercheck($number) { 
     //if else statements && return your answer 
    } 

    //here you are calling your function and displaying it on page 
    echo numbercheck($number); 
?>