> 백엔드 개발 > PHP 튜토리얼 > PHP의 마법 인용문을 사용하여 양식 제출 시 예기치 않은 슬래시를 해결하는 방법은 무엇입니까?

PHP의 마법 인용문을 사용하여 양식 제출 시 예기치 않은 슬래시를 해결하는 방법은 무엇입니까?

Barbara Streisand
풀어 주다: 2024-10-21 09:23:02
원래의
786명이 탐색했습니다.

How to Resolve Unexpected Slashes in Form Submissions with PHP's Magic Quotes?

PHP에서 매직 따옴표와 관련된 "모든 따옴표 앞에 슬래시" 문제 처리

PHP 양식 앞에 따옴표가 붙는 문제가 발생했습니다. 제출 시 모든 큰따옴표 앞에 "" 문자가 있어야 합니다. 이는 서버에서 "마법의 따옴표" 기능이 활성화되어 있기 때문일 수 있습니다.

마법의 따옴표는 양식 제출 및 기타 입력 데이터에서 큰따옴표를 포함한 특정 문자를 자동으로 이스케이프합니다. 이 기능은 SQL 삽입 공격을 방지하기 위한 것이지만 데이터 무결성 문제를 일으킬 수 있으며 일반적으로 오래된 것으로 간주됩니다.

이 문제를 해결하려면 처리하기 전에 원하지 않는 슬래시를 제거하기 위해 Stripslashes() 함수를 사용할 수 있습니다. 텍스트. Stripslashes()를 사용하여 다음 조건을 코드에 추가하세요.

<code class="php">if (get_magic_quotes_gpc()) {
    $your_text = stripslashes($your_text);
}</code>
로그인 후 복사

stripslashes()로 텍스트를 처리한 후 결과 $your_text 변수를 정상적으로 사용할 수 있으며 예상치 못한 슬래시가 포함되지 않습니다.

마법 인용문 비활성화에 관하여:

언급하신 대로 서버에 대한 루트 액세스 권한이 있습니다. 체계적이고 안전한 코드를 작성하려면 일반적으로 매직 따옴표를 비활성화하는 것이 좋습니다. 비활성화하는 이유는 다음과 같습니다.

  • 특정 문자 이스케이프에 의존하는 코드를 손상시킬 수 있습니다.
  • 데이터 검증 및 삭제 프로세스를 방해할 수 있습니다.
  • 최신 데이터베이스 드라이버와 프레임워크는 SQL 주입에 대해 보다 효과적인 보호 기능을 제공합니다.

마법 따옴표를 비활성화하려면 서버의 php.ini 파일을 편집하고 Magic_quotes_gpc 지시어를 Off로 설정하세요. 변경이 완료되면 변경 사항이 적용되도록 웹 서버를 다시 시작하세요.

마법 따옴표를 비활성화한 후 애플리케이션이 여전히 예상대로 작동하는지 철저히 테스트하는 것을 잊지 마세요.

위 내용은 PHP의 마법 인용문을 사용하여 양식 제출 시 예기치 않은 슬래시를 해결하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿