2013-07-20 29 views
0
<html> 
<body> 
    <form action="" method="GET"> 
    Name: <input type="text" name="name" /> 
    Age: <input type="text" name="age" /> 
    <input type="submit" /> 
    </form> 
</body> 
</html> 
<?php 
    if($_GET["name"] || $_GET["age"]) 
    { 
    echo "Welcome ". $_GET['name']. "<br />"; 
    echo "You are ". $_GET['age']. " years old."; 
    } 
?> 

問:得到通知消息中的HTML提交表單時

,當我在上面瀏覽器中打開腳本,它顯示:注意:Undefined index: name in D:\wamp\www\oop\test3.php on line 13, 我知道,如果是因爲表單尚未提交,因此$_GET["name"]做不存在,但如何解決這個問題?

+0

[?參考 - 這是什麼錯誤PHP意味着]可能重複(http://stackoverflow.com/questions/12769982/reference-what-does-這個錯誤意味着在php) –

+0

你有沒有嘗試我的例子/答案我給你下面,任何機會? –

回答

1

只需設置提交按鈕的名稱,並使用isset()檢查是否提交表單。

<html> 
    <body> 
     <form action="" method="GET"> 
      Name: <input type="text" name="name" /> 
      Age: <input type="text" name="age" /> 
      <input type="submit" name="submit" /> 
     </form> 
    </body> 
</html> 

<?php 
    if(isset($_GET['submit'])) 
    { 
     echo "Welcome ". $_GET['name']. "<br />"; 
     echo "You are ". $_GET['age']. " years old."; 
    } 
?> 
-1

嘗試:

<form action="" method="GET"> 
Name: <input type="text" name="name" id="name" /> 
Age: <input type="text" name="age" id="age" /> 
<input type="submit" /> 
</form> 
+2

如何添加一個ID改變任何服務器端? –

+0

我在想這個問題是與表單變量。沒有必要爲了投票而瘋狂,這只是一些嘗試。 – socketwiz

0

您可以測試您的特定_GET變量是否存在。例如:

<?php 
if (isset ($_GET["name"])) { 
    echo "Welcome ". $_GET['name']. "<br />";   
} 
?> 
1

下面的示例將檢查是否兩個字段都已填充。

如果其中一個未填滿,將顯示錯誤消息。

如果兩者都填充,則用戶將看到:

歡迎鮑勃 //在現場假設人的名字是「鮑勃」。
你30歲。 //假定該人在該字段中輸入了「30」。

否則,它會響應:在各個領域

填充。

這裏是下面的例子:

<html> 
    <body> 
     <form action="" method="GET"> 
      Name: <input type="text" name="name" /> 
      Age: <input type="text" name="age" /> 
      <input type="submit" name="submit" /> 
     </form> 
    </body> 
</html> 

<?php 


if($_GET['name'] && $_GET['age']) 

    { 
     echo "Welcome ". $_GET['name']. "<br />"; 
     echo "You are ". $_GET['age']. " years old."; 
    } 

if(!$_GET['name'] || !$_GET['age']) 

    { 

     echo "Fill in all fields"; 

    } 

?> 

我做了用於驗證的兩個&&||邏輯運算符。

諮詢PHP手冊獲取更多信息:http://php.net/manual/en/language.operators.logical.php