2012-03-14 5 views
0

현재 SilverStripe 프로젝트에서 작업 중이며 모든 것이 원활하게 진행되고있는 것으로 보입니다. 그런데 상황이 바뀌 었습니다. 오늘 아침에 로그인을 시도했는데 오류가 발생했다는 메시지가 나타납니다. 개발 모드에서 실행 는 다음으로 ErrorMessage를 주었다Silverstripe/admin/갑자기 작동을 멈췄습니다.

쿼리를 실행할 수 없습니다 [사용자 오류] :... "SiteTree_Live" "클래스 이름", "SiteTree_Live" "만든", "SiteTree_Live"을 "SELECT LastEdited " "SiteTree_Live "."URLSegment ","SiteTree_Live "."제목 ", "SiteTree_Live "."MenuTitle ","SiteTree_Live "."내용 ", "SiteTree_Live "."MetaTitle ","SiteTree_Live "." MetaDescription " "SiteTree_Live "."MetaKeywords ","SiteTree_Live "."ExtraMeta " "SiteTree_Live "."ShowInMenus ","SiteTree_Live "."ShowInSearch " "SiteTree_Live "."HomepageForDomain " "SiteTree_ Live "."ProvideComments ","SiteTree_Live "."Sort ","SiteTree_Live "."HasBrokenFile ","SiteTree_Live "."HasBrokenLink ", "SiteTree_Live "."Status ","SiteTree_Live "."ReportClass ", "SiteTree_Live". "CanViewType", "SiteTree_Live". "CanEditType" "SiteTree_Live". "할일", "SiteTree_Live". "버전", "SiteTree_Live". "ParentID"

읽기 전체 오류 메시지 : http://pastebin.com/TrjrEzUn

... WHERE ("SiteTree_Live"."ClassName" IN ('Page','BlogEntry','BlogTree','DienstHolder','DienstPage','FaqHolder','FaqPage','FrontPage','MemberPage','TeamPage','ErrorPage','RedirectorPage','VirtualPage','UserDefinedForm','BlogHolder')) AND (ParentID =) ORDER BY "Sort" You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ') ORDER BY "Sort"' at line 1 
GET /Security/login?BackURL=%2Fadmin 

Line 525 in /home/admin/domains/stargroup.nl/public_html/sapphire/core/model/MySQLDatabase.php 

내가 확인 내 빈 클래스 네임에 SQL, 일부는 발견되었지만 적절한 클래스 네임을 가진다. 누구든지이 오류를 극복하고 로그인을 다시 작동시키는 방법에 대한 제안 사항이 있습니까?

미리 Thnx!

+0

버그가 수정되었습니다. 자세한 내용은 다음을 참조하십시오 : http://www.silverstripe.org/general-questions/show/19479#post312599 – oceanmountain

+0

대답을 수락 된 것으로 표시하십시오. 그러한 것으로 표시되지 않은 해결 된 질문을 보는 것은 실망 스럽습니다. – schellmax

답변

1

버그는 SilverStripe IRC 채널의 Bollig | DesignCity 덕분에 해결되었습니다.

그것은 모든 자체에

잘못된 코드를 page.php 일부 코드

function Siblings() { 
     $whereStatement = "ParentID = ".$this->ParentID; 
    return DataObject::get("Page", $whereStatement); 
    } 

고정 코드 참고해야 할 일을했을 : 항상이 같은 작은 실수에주의 ..

function Siblings() { 
     $whereStatement = "ParentID = '".$this->ParentID."'"; 
    return DataObject::get("Page", $whereStatement); 
    } 
2

게시 된 쿼리의 문제는 매개 변수 중 하나 값이 누락 된 것입니다 - 오른쪽 끝에 :

AND (ParentID =) ORDER BY "Sort" 

silverstripe을 모른 채, 나는 당신의 기사/게시물 중 하나를 추측에는 요 어떻게 든 빠져 ID 또는 ParentID.

+0

실제로 잘못된 ParentID와 관련이 있습니다. 어떻게 든 ParentID를 정수로 가져 오는 것이 좋습니다. didnt는 일하는 것을 아주 잘한다. 하지만 지금은 해결했습니다 :) – oceanmountain

+0

답변을 수락 한 것으로 표시하십시오. 그러한 것으로 표시되지 않은 해결 된 질문을 보는 것은 실망 스럽습니다. – schellmax

+0

@schellmax 질문에이 의견을 게시해야합니다. - 그래서 OP가 업데이트를 얻습니다. 대답이 아닙니다. –