2017-12-17 8 views
-1

간단한 문제가 있습니다.
Test.phpPHP : 다음 페이지 오류 POST 변수

<form name ="myForm" method="post" id="back" action="homepage1.php"> 
    Auth:<select name="category" id="category"> 
    <option>1234</option> 
    <option>4231</option> 
    <option selected="selected"> 

    </option> 
    <option></option> 
    </select> 
    <input type="submit" id ="submit" name="submit" value = "submit" > 
</form> 

homepage1.php

<?php 
    $selectedid = $_POST['category']; 
    echo $selectedid; 
?> 

error: Undefined index: category in E:\xampp\htdocs\website\homepage1.php on line 121

사람이 내가 잘못 걸 말해 주시겠습니까. 감사합니다

+0

추가 후 버튼을 제출 양식을 사용하면 $ _POST 양식에 "카테고리"가 없으므로 homepage1.php를 리디렉션하거나 열면이 오류가 발생합니다. [POST 및 여기에 빈 포스트가 생기는 것을 방지하는 방법]에 대한 자세한 내용을 볼 수 있습니다. (http://php.net/manual/pt_BR/reserved.variables.post.php) –

+1

제출을 호출하지 마십시오. 자바 스크립트에서 제출 이벤트 핸들러가 표시되지 않습니다. – mplungjan

답변

1

1.Select 박스 옵션은 value 속성이 있으므로 아래와 같이 추가하지 않습니다 -

<form name ="myForm" method="post" id="back" action="homepage1.php"> 
    Auth:<select name="category" id="category"> 
     <option value="1234">1234</option><!-- add option value--> 
     <option value="4231">4231</option> 
    </select> 
<input type="submit" id ="submit" name="mysubmit" value = "submit" ><!--change button name to something else --> 
</form> 

2.Change homepage1.php 코드를 다음과 같은 : -

<?php 

//comment these two error reporting lines when code started working fine 
error_reporting(E_ALL); 
ini_set('display_errors',1); 

if(!empty($_POST['category'])){ 
    $selectedid = $_POST['category']; 
    echo $selectedid; 
} 
?> 
+1

@ENZOAUDITORE'ini_set ('display_errors', true)를 추가하십시오; error_reporting (E_ALL);'PHP 구문을 출력하거나, 다른 PHP 결과를 출력하여 결과가 공백이 될 수 있습니다. – IncredibleHat

+1

추 신 : @mplungjan과 같은 제출 ID/이름에 대한 제출 사용 안 함 : 아무것도 제출하지 마십시오. JavaScript에서 제출 이벤트 처리기를 숨 깁니다. –

+1

@ AlivetoDie - Anantsingh 덕분에 작동합니다. –

1

양식을 게시하기 위해 제출 버튼을 추가하면, [email protected]로 리디렉션하거나 열면 $ _POST 양식에 "카테고리"가 없어이 오류가 표시됩니다. POST and how prevent empty post here에 대한 자세한 내용을 볼 수 있습니다.

또한이 같은 옵션에 값을 추가해야합니다

<option value="4231">4231</option>

더 완전한 예 :

HTML :

<form name ="myForm" method="post" id="back" action="homepage1.php"> 
    Auth: 
    <select name="category" id="category"> 
     <option value="1234">1234</option> 
     <option value="4231">4231</option> 
     <option value="45698" selected="selected">45698</option> 
     <option value="9874">9874</option> 
    </select> 
    <input type="submit" name="btnSubmit" value = "Go!" > 
</form> 

PHP :

//Check if its a empty post 
if(!empty($_POST)){ 
     $selectedid = $_POST['category']; 
     echo $selectedid; 
}