2016-07-18 4 views
0

'formid'불법 문자열은 코드 조각으로 MODx 사이트의 메인 페이지에

[!eForm? 
    &formid=`forma_bron` 
    &tpl=`forma_bron` 
    &to=`[email protected]` 
    &report=`report-tpl` 
    &subject=`Request` 
    &eFormOnBeforeMailSent=`send` 
!] 

내가 얻을 오류 : 내가하려고 할 때 내가 GET 요청을 호출하지만 POST 매개 변수에 대한 검사가

여기

Illegal string offset 'formid'

File : /home/users/account/domains/site/assets/snippets/eform/eform.inc.php

Line : 104

Source : $validFormId = ($formid==$_POST['formid'])?1:0;

입니다 메인 페이지를 엽니 다.

답변

0

해당 페이지에서 eForm이 처리하는 양식은 name="formid"value="forma_bron" 인 숨겨진 입력이 필요합니다.

그러나 이것은 GET 요청 중에 무슨 일이 일어나고 있기 때문에, 당신은 (105 라인 정도)

$validFormId = ($formid==$_POST['formid'])?1:0; 

어떻게 추가하는

$validFormId = (isset($_POST['formid']) && $formid == $_POST['formid']) ? 1 : 0; 
+0

1. eform.inc.php에 다음 코드를 변경해야 이 입력 양식? 2.이 값은 GET 요청시 POST 배열에서 어떻게 나타 납니까? – user2371331

+0

나는 나의 대답을 연장했다. 이것이 eForm에서 유일한 PHP 통지 문제가되기를 바랍니다. Tools> Configuration> User에서 'PHP 오류의 탐지 수준'을 'E_NOTICE 이외의 모든 오류 감지'이하로 설정하여 MODX가 '경고'에서 멈추지 않도록해야합니다. – Jako

+0

예, 작동합니다. eForm의 버그입니까? – user2371331