PHP 5.4 사용에 따른 버그 패치 Htmlspecialchars Http://Sitehis.Com/Db_talk_546 > PHP /APM / 소스, 강좌, 팁

본문 바로가기

 

검색취소

PHP 5.4 사용에 따른 버그 패치 Htmlspecialchars Http://Sitehis.Com/Db_talk_546

검색 이전 다음 목록

본문

get_magic_quotes_gpc()가 무조건 false 리턴되고,

register_globals = on 옵션이 사라져서, extract를 직접 해줘야 한다.

  • @extract($_GET);
  • @extract($_POST);
  • @extract($_SERVER);
EUC-KR 환경에서 발생되는 오류
  • echo htmlspecialchars('한글',ENT_QUOTES,'ISO-8859-1'); 로 사용
  • sinc/lib/b3EnumSetFieldsToOptionTag_write.php
  • 일괄변경 ENT_QUOTES)   =>  ENT_QUOTES,'ISO-8859-1')
  • find . -name "*.php" -exec grep -Hn "htmlspecialchars(\\\$" {} \;
    • find . -name "*.php" -exec perl -pi -e 's/htmlspecialchars\(\$enum_atom\)/htmlspecialchars\(\$enum_atom,ENT_QUOTES,'\''ISO\-8859\-1'\''\)/g' {} \;
    • find . -name "*.php" -exec perl -pi -e 's/htmlspecialchars\(\$enum_atom,ENT_QUOTES\)/htmlspecialchars\(\$enum_atom,ENT_QUOTES,'\''ISO\-8859\-1'\''\)/g' {} \;
    • find . -name "*.php" -exec perl -pi -e 's/htmlspecialchars\(\$value,ENT_QUOTES\)/htmlspecialchars\(\$value,ENT_QUOTES,'\''ISO\-8859\-1'\''\)/g' {} \;
    • find . -name "*.php" -exec perl -pi -e 's/htmlspecialchars\(\$list\[\$value\],ENT_QUOTES\)/htmlspecialchars\(\$list\[\$value\],ENT_QUOTES,'\''ISO\-8859\-1'\''\)/g' {} \;

UTF-8이면
lib/function_mysql3.php
  • $stripslashes 값이 1에서 0으로 변경함
    function db_str($str, $stripslashes=1, $db_conn='d')
    => function db_str($str, $stripslashes=0, $db_conn='d')
sboard3 ok.php
  • else $sql_set .= ', `'.$value.'` ="'.$_POST[$value]. '"';
    => else $sql_set .= ', `'.$value.'` ="'.db_str($_POST[$value],0). '"';

    find . -name "*.php" -exec perl -pi -e 's/else \$sql_set \.\= '\'', `'\''\.\$value\.'\''` \="'\''\.\$_POST\[\$value\]\. '\''"'\'';/else \$sql_set \.\= '\'', `'\''\.\$value\.'\''` \="'\''\.db_str\(\$_POST\[\$value\],0\)\. '\''"'\'';/g' {} \;
  • else $sql_set .= ', '.$value.' ="'.$_POST[$value]. '"';
    =>else $sql_set .= ', `'.$value.'` ="'.db_str($_POST[$value],0). '"';

    find . -name "*.php" -exec perl -pi -e 's/else \$sql_set \.\= '\'', '\''\.\$value\.'\'' \="'\''\.\$_POST\[\$value\]\. '\''"'\'';/else \$sql_set \.\= '\'', `'\''\.\$value\.'\''` \="'\''\.db_str\(\$_POST\[\$value\],0\)\. '\''"'\'';/g' {} \;
     
  • if(isset($qs[$value])) $sql_set .= ", $value = '" . $qs[$value] . '\' ';

    find . -name "*.php" -exec perl -pi -e 's/if\(isset\(\$qs\[\$value\]\)\) \$sql_set \.\= ", \$value \= '\''" \. \$qs\[\$value\] \. '\''\\'\'' '\'';/if\(isset\(\$qs\[\$value\]\)\) \$sql_set \.\= ", `\$value` \= '\''" \.db_str\(\$qs\[\$value\],0\)\. '\''\\'\'' '\'';/g' {} \;
     
  • elseif(isset($_POST[$value])) $sql_set .= ", $value = '" . $_POST[$value] . '\' ';

    find . -name "*.php" -exec perl -pi -e 's/elseif\(isset\(\$_POST\[\$value\]\)\) \$sql_set \.\= ", \$value \= '\''" \. \$_POST\[\$value\] \. '\''\\'\'' '\'';/elseif\(isset\(\$_POST\[\$value\]\)\) \$sql_set \.\= ", `\$value` \= '\''"\. db_str\(\$_POST\[\$value\],0\)\. '\''\\'\'' '\'';/g' {} \;
     
전체적으로
  • 함수(&$list) ==> &삭제하고, 해당 함수에서 &붙임 function 함수 (&$list)

 

추천 0

등록된 댓글이 없습니다.

검색취소

PHP /APM / 소스, 강좌, 팁

검색
  • no image
  • ajax logind 후 css 적용 시키기

    ajax 로 로딩한 html 페이지의 css 또는 id 에는 jquery click 등 이벤트가 적용되지 않는다.이때 .on 이벤트를 사용하라.. var ajax_scrollTop=0;function ajax_clo…

  • 압축된 자바스크립트 원상복구 하기
  • 압축된 자바스크립트 원상복구 하기

    로딩속도,간결한 소스를 위해 자바스크립트 압축 방법을 소개 해 드렸지요. 자바스크립트 압축해서 사용하기 글 이동 하기 압축된 자바스크립트를 평상시에 사용하다 간혹 소스 수정을 해야 할때나 또는 다른곳에서 필요한 자바…

  • no image
  • 제로보드 XE -> 그누보드 회원변환

    제로보드 xe의 암호는 md5 를 사용하고 있다.그누보드는 password 함수를 사용하므로 상호 변환이 안된다.따라서.. 다음의 방법을 사용해야한다.1. 기존 xe 암호에 xe. 등 태그 저장해서 변환함.2. ex…

  • 타이머 시간 카운트
  • 타이머 시간 카운트

    첨부파일

        /* 시계 */figure, figcaption {display: block;}.transition {-webkit-transition: top 400ms linear;-moz-transition: top 4…

 

?>