2012-04-15 5 views
0

양식을 제출 한 후 $ _POST [ 'username']을 사용하는 대신 $ username

을 사용할 수 있었기 때문에 양식을 제출 한 후 다음을 수행하십시오.

echo $username; 

가 같은과 같이 생성합니다 :

echo $_POST['username'] 

난 그냥 새 서버로 이동하고이 나의 새로운 서버에서 작동하지 않을 것 같다 ... 어쩌면 PHP의 설정이 무엇인가이다 ?

는 지금 새로운 $ _POST [] 방법을 사용하는 것이 그렇지 않은 경우 전체 사이트를 통해가는 매우 형태로 구동 사이트를 변경하는 작업이 (물론 새로운 것이 아니다을하지만 당신은 내가 무슨 뜻인지 알고)

또한,이다 $ _POST []를 사용하지 않았습니다. 과거와 나쁜 연습에 왜 그런가요?

+0

http://php.net/manual/en/security.globals.php –

답변

0

$ _POST, $ _GET 및 $ _COOKIE에서 변수를 자동으로 생성하면 register_globals INI 지시문의 영향을받습니다.

보안 문제로 인해 사용되지 않으며 최근 설치시 기본적으로 해제되어 있습니다. 필자는이 기능을 신뢰하지 말고 항상 데이터 원본을 명시 적으로 지정하는 것이 좋습니다.

+0

글쎄, 최근에 ... 나는 PHP 4.X를 실행하는 서버와 별개로 ON을 본 적이 없지만, 그렇지 않다는 것을 알고있다. 특정 PHP 버전에 묶인 무언가 (5.3, 감사하게 deprecates). –

+0

방금이 내용을 읽었으며 내 사이트에 침입을 시도했습니다. 감사합니다. 한 URL 줄에서 관리했습니다. 내가 가진 서버 사람들은 글로벌이 켜져 있었고, 다시 작성했습니다! Aaaargh하지만 모든 올바른 이유 ... –