how to export excel file in same server

Discussion in 'PHP' started by stareagle, Jan 10, 2010.

  1. #1
    My first post - php newbie, so appreciate your support.

    I'm currently using headers to save web page as excel file.

    $filename="sms.xls";
    header("Pragma: public");
    header("Expires: 0");
    header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
    header("Cache-Control: public");
    header("Content-Description: File Transfer");
    header("Content-Type: application/vnd.ms-excel");
    $header="Content-Disposition: attachment; filename=".$filename.";";
    header($header);
    header("Content-Transfer-Encoding: binary");
    @readfile($file);

    I want to be able to save a copy to the server not to opening dialog save?
    Not sure what I need to change or add to achieve this?

    Have looked around and tried searching on here? - can't see the search threads feature if there is one?

    Many thanks.
     
    stareagle, Jan 10, 2010 IP
  2. JAY6390

    JAY6390 Peon

    Messages:
    918
    Likes Received:
    31
    Best Answers:
    0
    Trophy Points:
    0
    #2
    JAY6390, Jan 10, 2010 IP
  3. stareagle

    stareagle Peon

    Messages:
    5
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    this is simple code

    <? 
        $filename="sms.xls"; 
        header("Pragma: public"); 
        header("Expires: 0"); 
        header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); 
        header("Cache-Control: public"); 
        header("Content-Description: File Transfer"); 
        header("Content-Type: application/vnd.ms-excel"); 
        $header="Content-Disposition: attachment; filename=".$filename.";"; 
        header($header); 
        header("Content-Transfer-Encoding: binary"); 
        @readfile($file); 
    
    ?> 
    <html > 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1256" /> 
    <title>Report</title> 
    <style type="text/css"> 
    <!-- 
    .style1{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 18px; 
        color: #333333; 
    } 
    .style2{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 14px; 
        color: #000066; 
        background-color:#CCCCCC; 
        font-weight:bolder; 
    } 
    .style3{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 14px; 
        color: #FF0000; 
        background-color:#CCCCCC; 
        font-weight:bolder; 
    } 
    .style4{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 14px; 
        color: #000000; 
        background-color:#C2D69A; 
        font-weight:500; 
    } 
    .style5{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 14px; 
        color: #000000; 
        background-color:#FFFFFF; 
        font-weight:500; 
        border-color:#000000; 
    } 
    .style6{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 14px; 
        color: #000000; 
        background-color:#B8CCE4; 
        font-weight:500; 
        border-color:#000000; 
    } 
    .style7{ 
        font-size:10px; 
    } 
    .style8{ 
        font-family: "Times New Roman", Times, serif; 
        font-size:36px ; 
        font-weight:bolder; 
        color: #333333; 
        text-align:center; 
    } 
    .style9{ 
        font-family: "Times New Roman", Times, serif; 
        background-color:#CCCCC3; 
    } 
    .style10{ 
        font-family: "Times New Roman", Times, serif; 
        font-size: 12px; 
    } 
    --> 
    </style> 
    </head> 
    <body bgcolor="#EAEAEA"> 
    <div class="ReportTitle" > 
    <form action="PersonInfRep.php" method="post" name="form1"> 
    <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
      <tr> 
        <td width="1%">&nbsp;</td> 
        <td width="98%"><table width="100%" border="1"  cellpadding="4"  cellspacing="4"> 
          <tr> 
            <td > 
            <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
              <tr> 
                <td><div align="center" class="style8"> Data Report</div></td> 
                </tr> 
            </table></td> 
            </tr> 
    
          <tr> 
    
    
            <td > 
                    <div align="left"> 
    
    
              <table width="100%" border="0" cellspacing="0" cellpadding="0"> 
                <tr> 
                  <td colspan="2" bgcolor="#CCCCCC"=""><div align="left"> 
                      <table width="51%" border="0" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC" > 
                        <tr> 
                          <td width="34%" class="style2"><div align="center">Total</div></td> 
                          <td width="66%" class="style2">&nbsp;</td> 
                        </tr> 
                        <tr class="style2"> 
                          <td class="style2">&nbsp;</td> 
                          <td><div align="center">Count</div></td> 
                        </tr> 
                        <tr class="style3"> 
                          <td><div align="center">Grand Total</div></td> 
                          <td><div align="center">5974</div></td> 
                        </tr> 
                      </table> 
                  </div></td> 
                </tr> 
                <tr> 
                  <td>&nbsp;</td> 
                  <td>&nbsp;</td> 
                </tr> 
                <tr> 
                  <td width="51%"> 
                      <table width="100%" border="0" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC" > 
                        <tr> 
                          <td class="style2"><div align="center">Gender</div></td> 
                          <td colspan="2" class="style2">&nbsp;</td> 
                        </tr> 
                        <tr class="style2"> 
                          <td width="35%">&nbsp;</td> 
                          <td width="39%"><div align="center">Count</div></td> 
                          <td width="26%"><div align="center">%</div></td> 
                        </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp; 
                                  Male                              </td> 
                                  <td class="style5" ><div align="center"> 
                                  2800                              </div></td> 
                                  <td class="style6" ><div align="center"> 
                                  46.870%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp; 
                                  Female                              </td> 
                                  <td class="style5" ><div align="center"> 
                                  1774                              </div></td> 
                                  <td class="style6" ><div align="center"> 
                                  29.695%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp; 
                                  NA                              </td> 
                                  <td class="style5" ><div align="center"> 
                                  1400                              </div></td> 
                                  <td class="style6" ><div align="center"> 
                                  23.435%</div></td> 
                                </tr> 
    
                        <tr class="style3"> 
                          <td><div align="center">Grand Total</div></td> 
                          <td><div align="center">5974</div></td> 
                          <td><div align="center">100%</div></td> 
                        </tr> 
                      </table>                </td> 
                  <td width="49%" class="style9"><table width="100%" border="0"> 
                    <tr> 
                      <td width="22%"><div align="left">Male</div></td> 
                      <td><div align="right">46.870%</div></td> 
                      <td width="78%"><div align="left"><img src="Img/red.gif" alt="" width="46.870" height="16" /></div></td> 
                    </tr> 
                    <tr> 
                      <td><div align="left">NA</div></td> 
                      <td><div align="right">23.435%</div></td> 
                      <td width="78%"><div align="left"><img src="Img/green.gif" alt="" width="23.435" height="16" /></div></td> 
                      </tr> 
                    <tr> 
                      <td><div align="left">Female</div></td> 
                      <td><div align="right">29.695%</div></td> 
                      <td width="78%"><div align="left"><img src="Img/blue.gif" alt="" width="29.695" height="16" /></div></td> 
                      </tr> 
                  </table>              </td> 
                </tr> 
                <tr> 
                  <td>&nbsp;</td> 
                  <td>&nbsp;</td> 
                </tr> 
    
                 <tr> 
                  <td width="51%" valign="bottom"> 
                  <table height="100%" width="100%" border="0" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC" > 
                        <tr> 
                          <td class="style2"><div align="center">Income</div></td> 
                          <td colspan="2" class="style2">&nbsp;</td> 
                        </tr> 
                        <tr class="style2"> 
                          <td width="35%">&nbsp;</td> 
                          <td width="39%"><div align="center">Count</div></td> 
                          <td width="26%"><div align="center">%</div></td> 
                        </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;Less than 2000</td> 
                                  <td class="style5" ><div align="center">68</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  1.138%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;2000 - 4000</td> 
                                  <td class="style5" ><div align="center">128</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  2.143%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;4001 - 8000</td> 
                                  <td class="style5" ><div align="center">3163</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  52.946%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;8001 - 12000</td> 
                                  <td class="style5" ><div align="center">2074</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  34.717%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;12001 - 16000</td> 
                                  <td class="style5" ><div align="center">134</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  2.243%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;16001 - 20000</td> 
                                  <td class="style5" ><div align="center">49</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  0.820%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;> 20000</td> 
                                  <td class="style5" ><div align="center">122</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  2.042%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;UNKNOWN</td> 
                                  <td class="style5" ><div align="center">236</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  3.951%</div></td> 
                                </tr> 
                                            <tr class="style3"> 
                          <td><div align="center">Grand Total</div></td> 
                          <td><div align="center">5974</div></td> 
                          <td><div align="center">100%</div></td> 
                        </tr> 
                      </table>                </td> 
                  <td class="style9"><table width="100%" border="0"> 
                  <tr><td width='25%'><div align='left'><span class='style10'> Less than 2000</span></div></td><td width='10%'><div align='right'>1.138%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=1.138 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> 2000 - 4000</span></div></td><td width='10%'><div align='right'>2.143%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=2.143 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> 4001 - 8000</span></div></td><td width='10%'><div align='right'>52.946%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=52.946 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> 8001 - 12000</span></div></td><td width='10%'><div align='right'>34.717%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=34.717 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> 12001 - 16000</span></div></td><td width='10%'><div align='right'>2.243%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=2.243 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> 16001 - 20000</span></div></td><td width='10%'><div align='right'>0.820%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=0.820 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> > 20000</span></div></td><td width='10%'><div align='right'>2.042%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=2.042 /></div></td></tr><tr><td width='25%'><div align='left'><span class='style10'> UNKNOWN</span></div></td><td width='10%'><div align='right'>3.951%</div></td><td width='78%'><div align='left'><img src='Img/green.gif'height='15' width=3.951 /></div></td></tr>              </table>              </td> 
                </tr> 
                <tr> 
                  <td>&nbsp;</td> 
                  <td>&nbsp;</td> 
                </tr> 
    
                <tr> 
                  <td width="51%"> 
                  <table width="100%" border="0" cellpadding="0" cellspacing="0" bordercolor="#CCCCCC" > 
                        <tr> 
                          <td class="style2"><div align="center">Age</div></td> 
                          <td colspan="2" class="style2">&nbsp;</td> 
                        </tr> 
                        <tr class="style2"> 
                          <td width="35%">&nbsp;</td> 
                          <td width="39%"><div align="center">Count</div></td> 
                          <td width="26%"><div align="center">%</div></td> 
                        </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;UNDER 16</td> 
                                  <td class="style5" ><div align="center">88</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  1.473%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;16 - 25</td> 
                                  <td class="style5" ><div align="center">392</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  6.562%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;26- 45</td> 
                                  <td class="style5" ><div align="center">4832</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  80.884%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;46 - 60</td> 
                                  <td class="style5" ><div align="center">480</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  8.035%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;MORE THAN 60</td> 
                                  <td class="style5" ><div align="center">13</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  0.218%</div></td> 
                                </tr> 
                                                    <tr> 
                                  <td class="style4">&nbsp;UNKNOWN</td> 
                                  <td class="style5" ><div align="center">169</div></td> 
                                  <td class="style6" ><div align="center"> 
                                  2.829%</div></td> 
                                </tr> 
                                            <tr class="style3"> 
                          <td><div align="center">Grand Total</div></td> 
                          <td><div align="center">5974</div></td> 
                          <td><div align="center">100%</div></td> 
                        </tr> 
                      </table>                </td> 
                  <td class="style9"><table width="100%" border="0"> 
                  <tr><td width='25%'><div align='left'>UNDER 16</div></td><td width='10%'><div align='right'>1.473%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=1.473 /></div></td></tr><tr><td width='25%'><div align='left'>16 - 25</div></td><td width='10%'><div align='right'>6.562%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=6.562 /></div></td></tr><tr><td width='25%'><div align='left'>26- 45</div></td><td width='10%'><div align='right'>80.884%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=80.884 /></div></td></tr><tr><td width='25%'><div align='left'>46 - 60</div></td><td width='10%'><div align='right'>8.035%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=8.035 /></div></td></tr><tr><td width='25%'><div align='left'>MORE THAN 60</div></td><td width='10%'><div align='right'>0.218%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=0.218 /></div></td></tr><tr><td width='25%'><div align='left'>UNKNOWN</div></td><td width='10%'><div align='right'>2.829%</div></td><td width='78%'><div align='left'><img src='Img/blue.gif'height='16' width=2.829 /></div></td></tr>              </table>              </td> 
                </tr> 
                <tr> 
                  <td>&nbsp;</td> 
                  <td>&nbsp;</td> 
                </tr> 
              </table> 
            </div>        </td> 
            </tr> 
        </table></td> 
        <td width="1%">&nbsp;</td> 
      </tr> 
      <tr> 
        <td>&nbsp;</td> 
    
        <td>&nbsp;</td> 
      </tr> 
    </table> 
    </form> 
    </div> 
    </body> 
    </html> 
    PHP:
     
    stareagle, Jan 10, 2010 IP
  4. astkboy2008

    astkboy2008 Peon

    Messages:
    211
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
  5. stareagle

    stareagle Peon

    Messages:
    5
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #5
    thank u but i need to export data from page (HTML) which contain data (got from data base) and tables to excel file (like in page ) my real problem is in image in page html that not export to excel file so i want to save this file in server to work in it to view image before downloading it
     
    stareagle, Jan 11, 2010 IP
  6. astkboy2008

    astkboy2008 Peon

    Messages:
    211
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
    #6
    astkboy2008, Jan 11, 2010 IP
  7. stareagle

    stareagle Peon

    Messages:
    5
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #7
    thank u i now work in another idea if not work i see ur example
     
    stareagle, Jan 11, 2010 IP