포럼
[문제해결1] 1.4.x -> 1.5.6 까지 업데이트시 글쓰기 안되는 문제점 일부 해결
2011.10.25 01:56
[문제해결1] 1.4.x -> 1.5.6 까지 업데이트시 글쓰기 안되는 문제점 일부 해결
글쓰기 안되는 모든 문제점 해결이 아니라 제 나름대로 생긴 문제점을 나름대로의 방식으로 해결한 내용입니다.
혹시 업데이트 해버린 분들에게 도움이 될까 싶어 적습니다.
- 증상내용 -
1.5.6까지 모든 업데이트를 마치고 글쓰기할때 제목과 본문에 내용입력후 등록 버튼을 누르면
홈페이지의 형식이 잘못되었습니다. (예: http://www.xpressengine.com)
라는 에러문구가 뜨면서 글쓰기 자체가 되지 않는 증상.
- 나름대로 추측한 원인 -
모든 업데이트를 마친후에 회원설정의 가입폼관리에서 홈페이지 항목과 블로그 항목을 체크해제 하였는데 그게 원인일 것 같다고 나름대로 추측함.
- 문제 해결 하기 까지의 과정 -
1.5.6 버전의 모든 파일내용을 검색하여 에러문구를 찾아보니...
/common/lang/lang.xml 파일의 대략 3667줄의 invalid_homepage 부분에 있었다.
다시 1.5.6 버전의 모든 파일 내용을 invalid_homepage 로 검색하여 나름대로 찾아보았는데
/classes/xml/xmlquery/argument/Argument.class.php 파일의 대략 120줄 부근에
case 'homepage' : 항목에서 띄우는 에러문구였다. 뭐 때문에 이게 출력된지는 모르겠지만..
나는 백업도 하지 않고 업데이트를 해버렸기 때문에 무슨 수를 써서든 글쓰기가 되게 해야하기 때문에.
그 항목을 지웠다.
아래 내용은 /classes/xml/xmlquery/argument/Argument.class.php 120줄 부근의 소스 내용인데
저기서 빨간글자로 된 부분이 내가 삭제를 한 부분 이었다.
===================================================================
case 'email' :
case 'email_address' :
if(!preg_match('/^[_0-9a-z-]+(\.[_0-9a-z-]+)*@[0-9a-z-]+(\.[0-9a-z-]+)*$/is', $val)) {
$this->isValid = false;
$this->errorMessage = new Object(-1, sprintf($lang->filter->invalid_email, $lang->{$key} ? $lang->{$key} : $key));
}
break;
case 'homepage' :
if(!preg_match('/^(http|https)+(:\/\/)+[0-9a-z_-]+\.[^ ]+$/is', $val)) {
$this->isValid = false;
$this->errorMessage = new Object(-1, sprintf($lang->filter->invalid_homepage, $lang->{$key} ? $lang->{$key} : $key));
}
break;
case 'userid' :
case 'user_id' :
if(!preg_match('/^[a-zA-Z]+([_0-9a-zA-Z]+)*$/is', $val)) {
=====================================================================
이제는 글쓰기가 이상없이 잘된다.
도움이 되었습니다 감사합니다.