<textarea>
양식의 html을 보존하고 데이터를 데이터베이스에 저장하기 위해 base64_encode
을 사용했습니다. 검색시 base64_decode
이 사용되고 데이터가 텍스트 영역에 입력됩니다. 이것은 mysql_real_escape_string()
을 사용하지 않고 안전하게 할 수 있습니까?mysql_real_escape_string 대신 base64_encode를 사용하는 것이 안전합니까?
템플릿 id
의 $_GET
매개 변수를 검색 할 때 mysql_real_escape_string
을 사용합니다.
templates.php?id=4
mysql_real_escape_string()
대신 base64를 사용하는 것은 나쁜 습관입니까?
"작업에 잘못된 도구"?
참고 : xss에는 htmlspecialchars($text, ENT_QUOTES);
을 사용합니다.
고대의'mysql_ *'함수로 새로운 코드를 작성하는 것을 중단하십시오. 그들은 더 이상 유지되지 않으며 커뮤니티는 [비추천 프로세스]를 시작했습니다 (http://news.php.net/php.internals/53799). 대신 준비된 구문을 배우고 [PDO] (http://php.net/pdo) 또는 [MySQLi] (http://php.net/mysqli)를 사용해야합니다. 만약 당신이 배울 점이 있다면, 여기 [PDO 관련 튜토리얼] (http://wiki.hashphp.org/PDO_Tutorial_for_MySQL_Developers). –
데이터베이스에 base64 blob을 실제로 저장 하시겠습니까? 공간을 낭비 할뿐만 아니라 데이터베이스 내부의 데이터를 조작하지 못하게합니다. – deceze
@deceze 괜찮습니다. 저장된 html에 대한 쿼리를 실행하지 않지만 mysql이 이스케이프 처리 한 다른 부분은 수행합니다. – Kyle