2013-06-10 5 views
-1

PHP 코드 함수는 이제 버튼 클릭으로 나타나는 함수가 필요합니다.JS 전화 PHP 함수

function prints() 
{ 
    header('Content-type: application/excel'); 
    $filename = 'LEGO_PRODUCTION_RESULT_NG.xls'; 
    header('Content-Disposition: attachment; filename='.$filename); 
    $data = "<html xmlns:x='urn:schemas-microsoft-com:office:excel'> 
    <head> 
     <!--[if gte mso 9]> 
     <xml> 
      <x:ExcelWorkbook> 
       <x:ExcelWorksheets> 
        <x:ExcelWorksheet> 
         <x:Name>Sheet 1</x:Name> 
         <x:WorksheetOptions> 
          <x:Print> 
           <x:ValidPrinterInfo/> 
          </x:Print> 
         </x:WorksheetOptions> 
        </x:ExcelWorksheet> 
       </x:ExcelWorksheets> 
      </x:ExcelWorkbook> 
     </xml> 
     <![endif]--> 
    </head>"; 

    echo $data; 
} 

HTML 버튼 : 여기

내 PHP 코드 기능입니다

<input type="button" value="Export to Excel"/> 

그래서 어떻게 클릭 버튼의 PHP 함수를 호출하는 JS 기능을 추가 할 수 있습니까?

+0

아약스 (필러) (필러) – Ven

답변

0

첨부 파일 처분을 가진 파일을 출력하기 때문에, 당신은 단순히 PHP 스크립트에 연결할 수 있습니다

<input type="button" value="Export to Excel" onclick="window.location='print.php'" /> 

print.phpprints() 기능과 아무것도를 호출해야합니다.

클릭하면 브라우저가 페이지를 리디렉션하지 않고 현재 페이지를 그대로두고 파일 다운로드 프롬프트를 표시합니다.

+2

최상의 솔루션. 제로 자바 스크립트. 모든 브라우저에서 작동합니다 (자바 스크립트를 사용하지 않아도 고대의 브라우저까지 포함). – slebetman

+0

downvotes 설명 해주십시오? 이것은 최선의 방법입니다 ... – MrCode

+0

'window.location'은 무엇이라고 생각하십니까? @slebetman 또한 인라인 JS를 사용하면 최상의 솔루션이되지 않습니다. – PeeHaa