저는 PHP에 매우 익숙하며 자바 스크립트에 익숙하지만 현재 막대한 jqGrid 플러그인을 사용하는 방법을 배우고 있습니다. jqGrid가 그리드 데이터를 직렬화하는 방법과 PHP가이 데이터를 분석하는 방법을 이해하려고합니다. 현재 MySQL에 연결하고 있지는 않지만 직렬화 된 jqGrid 데이터를 "가짜"결과로 표시하려고합니다.jqGrid serializegriddata PHP 구문 분석
<?php
$jason = $_POST['postData'];
$page = $jason->{'page'};
echo '<rows>';
echo '<page>1</page>';
echo '<total>1</total>';
echo '<records>1</records';
echo '<row id="1">';
echo '<cell>'.$page.'</cell>';
echo '</row>';
echo '</rows>';
?>
: 나는 다음 코드를 가지고 내 'grid.php'파일에이 정보를 보내
<script type='text/javascript'>
$(function(){
$('#list').jgGrid({
url:'grid.php',
mtype:'POST',
colNames:['json'],
colModel:[{name:'j',index:'j',searchoptions:{sopt:['eq']},search:true}],
pager:'#pager',
rowNum:10,
viewrecords:true,
gridview:true,
serializeGridData:function(postData){
return postData;
}
})
});
</script>
: 내 PHP 파일의 머리에 JS에 대한 다음과 같은 코드를 JS에서 serializegriddata 옵션을 제거하면 모든 것이 잘 작동합니다. 또한 기본 $ _POST [ 'page'], $ _POST [ 'rows'], $ _POST [ 'sidx'], $ _POST [ 'sord']를 추가합니다. 다시 PHP로). serializegriddata를 추가하면 문제가 발생합니다.
나는 클라이언트 측에서 postData를 사용하는 방법에 대한 예제를 찾고 있는데 (serializegriddata에 추가해야하는 다른 함수이거나 postData를 반환 할 수 있습니까?) 그리고 PHP에서이를 올바르게 파싱하는 방법 데이터를 $ _POST하는 방법과이 데이터를 구문 분석하고 사용하는 방법). 나는 이것이 아마도 매우 간단한 해결책이라는 것을 알고 있지만, 나는 클라이언트에 관해서 이야기하고 서버 측에 관해서는 아무것도 말하지 않는다. 미리 감사드립니다.
나는 그 예를 이미 보았습니다. $ _GET을 사용하여 클라이언트 측에서 정보를 검색합니다.필자의 예제는 매우 간단했지만 여러 검색 기준을 사용해야하므로 클라이언트 측에서 데이터를 직렬화해야합니다. 단일 검색의 경우 $ _GET [ 'sField'], $ _GET [ 'sValue'] 및 $ _GET [ 'sOper']를 사용할 수 있습니다. 그러나 여러 검색 기준의 경우 postData를 사용해야하고 PHP에서이 JSON 문자열을 파싱해야합니다. 어떻게 여러 검색에 대한 각 기준이 'postData'에 포함되어 있는지 확인한 다음 PHP에서 JSON 문자열 'postData'를 구문 분석하는 방법 – Michael