Iam with the table themes. 아래에서 볼 수 있듯이 행과 열에 값을 표시하는 테이블을 만드는 일은 내 전체 코드입니다. 코드에는 내 테마 등록도 포함되어 있습니다. 값은 fileId, fileName 등 코드 안에있는 6 개의 배열에서옵니다. 이제이 코드를 사용하여이 출력이 http://www.image-share.com/ijpg-1166-290.html이됩니다. 원하는 출력은 http://www.image-share.com/ijpg-1166-289.html과 같아야합니다. 여기에 표시된 값을 성공적으로 인쇄했기 때문에 어레이가 제대로 채워집니다. http://www.image-share.com/ijpg-1166-288.html 체크 상자가 필요하지 않지만 이전에 사용한 예제에서 나온 이후이 코드를 사용했습니다.Drupal 6 테이블을 테마로하여 행과 열로 배열을 출력하는 방법은 무엇입니까?
내가 이상한 결과를 얻고있는 곳에서 실수를 저에게 안내해주십시오.
function freeway_dashboard_details(){
$pidobtained = $_GET['project_id'] ;
$fileId = array();
$fileName = array();
$srcLang = array();
$targLang = array();
$statusId = array();
$statusDesc = array();
$LoginClient = new SoapClient("https://freeway.demo.company.com/vojo/FreewayAuth.asmx?wsdl", array("trace"=>1));
$ServicesLink = new SoapClient("https://freeway.demo.company.com/vojo/Service.asmx?wsdl", array("trace"=>1));
try
{
$arrResponse = $LoginClient->Logon(array ('Username'=>'','Password'=>''));
$ticket = ($arrResponse->LogonResult);
$fileStatus = $ServicesLink->GetFileStatus(array('Ticket'=>$ticket,'ProjectID'=>$pidobtained,'SourceLanguageID'=> "", 'TargetLanguageID'=> "",'FileID'=> "",'Filename'=>""));
$arrayPid = array();
foreach($fileStatus->GetFileStatusResult->FileStatuses->FileStatus as $fileStatusObtained)
{
$arrayPid = get_object_vars($fileStatusObtained);
//print_r($fileStatusObtained->FileID);
$fileId [] = $fileStatusObtained->FileID;
$fileName[] = $fileStatusObtained->Filename;
$srcLang[] = $fileStatusObtained->SourceLanguageID;
$targLang[] = $fileStatusObtained->TargetLanguageID;
$statusId[] = $fileStatusObtained->StatusID;
$statusDesc[] = $fileStatusObtained->StatusDescription;
}
for($n=0;$n <count($fileId);$n+=1){
$options[$fileId[$n]] = '';
$form[$fileId[$n]]['FileID'] = array('#value' => $fileId[$n]);
$form[$fileName[$n]]['FileName'] = array('#value' => $fileName[$n]);
$form[$srcLang[$n]]['SrcLang'] = array('#value' => $srcLang[$n]);
$form[$targLang[$n]]['TarLang'] = array('#value' => $targLang[$n]);
$form[$statusId[$n]]['StatusID'] = array('#value' => $statusId[$n]);
$form[$statusDesc[$n]]['StatusDesc'] = array('#value' => $statusDesc[$n]);
}
}
catch(SoapFault $exception)
{
return $exception;
}
$form['featured'] = array(
'#type' => 'checkboxes',
'#options' => $options,
'#multiple' => false,
);
return $form;
}
function freeway_theme() {
return array('freeway_dashboard' => array('arguments' => array('form' => NULL),),'freeway_dashboard_details' => array('arguments' => array('form' => NULL),),);
}
function theme_freeway_dashboard_details($form) {
$rows = array();
foreach (element_children($form) as $key) {
$row = array();
if (isset($form[$key]['FileID'])) {
$status = drupal_render($form['featured'][$key]);
$row[] = array('data' => $status, 'class' => 'checkbox');
$row[] = ''. drupal_render($form[$key]['FileID']) .'';
$row[] = array('data' => drupal_render($form[$key]['FileName']));
$row[] = array('data' => drupal_render($form[$key]['SrcLang']));
$row[] = array('data' => drupal_render($form[$key]['TarLang']));
$row[] = array('data' => drupal_render($form[$key]['StatusID']));
$rows[] = $row;
}
}
$header = array();
$header[] = array('data' => t('Featured'), 'class' => 'checkbox');
$header[] = t('File ID');
$header[] = t('File Name');
$header[] = t('Source Language');
$header[] = t('Target Language');
$header[] = t('Status ID');
$header[] = t('Status Description');
$output = theme('table', $header, $rows,array('size'=>10, 'class' => 'table_class'));
$output .= drupal_render($form);
return $output;
}
감사 안젤라