2013-09-29 6 views
0

내가 같은 페이지에서 양식 및 데이터 처리와 더불어, PHP 연결 스크립트를 할 노력하고있어,하지만 난 내 코드를하려고 할 때 항상이 오류를 얻을 :

Notice: Undefined index: password in C:\Users\Simon\Documents\Site FTM\connexion.php on line >7

Fatal error: Call to a member function fetch() on a non-object in C:\Users\Simon\Documents\Site FTM\connexion.php on line 18

PHP는 $ _POST에서 'password'라는 색인을 찾지 못하지만 양식이 같은 페이지 (#)로 연결되어 있다는 것을 알고 있습니다 ... 좀 도와 줄 수 있습니까? PasteBin의 전체 코드는 다음과 같습니다. http://pastebin.com/A9z1HHvf

죄송합니다. 오류 메시지는 프랑스어로 표시되지만 다른 모든 변수 이름은 영어입니다. $ errDisplay는 내 모든 사용자 정의 오류 메시지를 저장하고 내 페이지의 맨 아래에 표시하는 데 사용된다는 것을 알아야합니다.

+0

그리고 코드는 어떻게 생겼습니까? 특히 18 번 줄 ... – Broxzier

답변

4

이 줄은 문제가있다 :

$isFormOK = isset($_POST['username']) AND isset($_POST['password']); 

AND=보다 lower precedence을 가지고,이 라인은 다음과 같이 읽고 그 이유는 : 스크립트에 $_POST['password'] 여부, 즉

($isFormOK = isset($_POST['username'])) 
    AND isset($_POST['password']); 

, 동일한 방법으로 작동합니다. $isFormOk 값은 $_POST['username']에만 기반합니다.

$isFormOK = isset($_POST['username']) && isset($_POST['password']); 

... 또는, 더 나은, 단지 isset이 더 걸릴 수 있다는 사실은 사용

은 당신이 대신해야 할 것은 하나 부울 and&& 양식을 사용 (더 높은 =에 비해 우선 순위가) 하나 개의 인수보다 :

:

$isFormOK = isset($_POST['username'], $_POST['password']); 

the doc를 인용 0

-1
if(isset($_REQUEST['password'])){ 
$pass = $_REQUEST['password']; 
} 

이제 $pass에는 게시되는 값이 포함되어 있으므로 사용할 수 있습니다.

+0

OP의 코드는 이미'$ _POST [ 'password']'를 참조합니다. - 모두'$ _REQUEST'는'GET'과'POST'를 모두 사용합니다. –

관련 문제