본문 바로가기
Programming/WEB Hosting

[XE] XE에서 확장변수정보 쉽게 엑셀 파일로 저장하기

by 도파공 2010. 5. 1.
728x90
반응형

LaTex를 쓰기 위해 설정한 것 때문에 $표시가 나타나면 수식으로 자동인식이 되고 있습니다. 하단의 링크를 참고하시면 제대루 보실 수 있어요. ㅠㅠ

 

Ref. : http://www.xpressengine.com/18207088

 

제가 적용한 방법(확장변수)이에요.. 소트하고, value 부분만 뽑아내도록 했어요. 이 코드를 복사한 후 저장은 UTF-8방식으로 저장하셔야 합니다. 여기서는 확장변수가 13개일 때 적용한 겁니다. 하나하나 풀어가는데 쉽지 않군요..

<?
$connect_host        = "호스트주소";
$connect_id        = "DB_ID";
$connect_pass        = "DB_PASSWORD";
$connect_db        = "DB_NAME";
$connect_table        = "xe_document_extra_vars";
$xls_filename        = "filename.xls";


$connect=@mysql_connect($connect_host,$connect_id,$connect_pass);
@mysql_query("set character set utf8"); // 한글 입출력 문제 해결을 위해..
$mysql=@mysql_select_db($connect_db,$connect);


header("Content-Type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$xls_filename");
?>


<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <table border=1>


<?
$fields = mysql_list_fields("$connect_db", "$connect_table");
$columns = mysql_num_fields($fields);

for ($i = 0; $i < $columns; $i++) {
  $field[$i]=mysql_field_name($fields, $i);
  /*echo "<th>".$field[$i]. "</th>";*/
}

?>

<tr>
<td>항목A</td>
<td>항목B</td>
<td>항목C</td>
<td>항목D</td>
<td>항목E</td>
<td>항목F</td>
<td>항목G</td>
<td>항목H</td>
<td>항목I</td>
<td>항목J</td>
<td>항목K</td>
<td>항목L</td>
<td>항목M</td>
</tr>


<?
$result=mysql_query("select * from $connect_table where module_srl=값 order by document_srl, var_idx");
$ctmp = 1;
echo "<tr>";
while($data=mysql_fetch_assoc($result)){
for ($i = 4; $i < sizeof($field); $i=$i+5) {
echo "<td>".$data["$field[$i]"]."</td>";

if($ctmp%13 == 0) // 확장변수 수만큼 값을 넣으세요. 여기서는 확장변수 13개임.
{
echo "</tr>";
if($i+5<sizeof($field)){
echo "<tr>";
}
}
$ctmp = $ctmp + 1;
}
}

?>

    </table>
  </body>
</html>

728x90
반응형

댓글