Hallo,
Ik ben momenteel bezig met een stockinquiry project en doe het volgende.
Op basis van een form laat ik de gebruiker een SKU/Description invoeren en PHP trekt de data uit de database en plaatst deze in een HTML table. Dit gaat als volgt:
Om de functionaliteit te verhogen wil ik de table laten openen in excel door middel van een button. In eerste instantie heb ik dit gedaan met JavaScript. Dit werkte, maar beveiliging was een issue. In de browser opties moesten eerst alle beveiligingspolicies voor activex controls worden gewijzigd en dat is niet mijn opzet.
Via PHP lukt het mij wel door middel van het wijzigen van de header:
<Hier vervolgens de table>
Excel vraagt dan direct om het bestand te openen.
Wat ik eigenlijk zoek is een php script welke de gegenereerde table in de webbrowser mount als een soort van variable, deze vervolgens passt naar een volgend php file. Het volgende PHP file zou dan de header echoen (zoals bovenstaand is te lezen) en vervolgens de gemounte table echoen. Naar mijn inziens zou dit moeten resulteren in een prompt om een excel file te openen.
Heeft iemand een ander idee, of kan iemand mij op weg helpen?
Bedankt!
Koen
Ik ben momenteel bezig met een stockinquiry project en doe het volgende.
Op basis van een form laat ik de gebruiker een SKU/Description invoeren en PHP trekt de data uit de database en plaatst deze in een HTML table. Dit gaat als volgt:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| while (odbc_fetch_row($rs)) { $WH=odbc_result($rs,"WH"); $SKU=odbc_result($rs,"SKU"); $DESC1=odbc_result($rs,"DESC1"); $QTY=ROUND(odbc_result($rs,"QTY"),0); $OPENSO=ROUND(odbc_result($rs,"OPENSO"),0); $OPENPO=ROUND(odbc_result($rs,"OPENPO"),0); $FREEAVAILABLE=ROUND(odbc_result($rs,"FREEAVAILABLE"),0); echo "<tr><td>$WH</td>"; echo "<td>$SKU</td>"; echo "<td>$DESC1</td>"; echo "<td>$QTY</td>"; echo "<td>$OPENSO</td>"; echo "<td>$OPENPO</td>"; echo "<td><b>$FREEAVAILABLE</b></td></tr>"; } odbc_close($conn); echo "</table>"; |
Om de functionaliteit te verhogen wil ik de table laten openen in excel door middel van een button. In eerste instantie heb ik dit gedaan met JavaScript. Dit werkte, maar beveiliging was een issue. In de browser opties moesten eerst alle beveiligingspolicies voor activex controls worden gewijzigd en dat is niet mijn opzet.
Via PHP lukt het mij wel door middel van het wijzigen van de header:
PHP:
1
2
3
4
5
6
| $bestandsnaam = "testje"; header("Content-Type: application/vnd.ms-excel"); header("Content-Disposition: attachment; filename=" . $bestandsnaam . ".xls"); header("Expires: 0"); header("Cache-Control: must-revalidate, post-check=0, pre-check=0"); |
<Hier vervolgens de table>
Excel vraagt dan direct om het bestand te openen.
Wat ik eigenlijk zoek is een php script welke de gegenereerde table in de webbrowser mount als een soort van variable, deze vervolgens passt naar een volgend php file. Het volgende PHP file zou dan de header echoen (zoals bovenstaand is te lezen) en vervolgens de gemounte table echoen. Naar mijn inziens zou dit moeten resulteren in een prompt om een excel file te openen.
Heeft iemand een ander idee, of kan iemand mij op weg helpen?
Bedankt!
Koen
[ Voor 1% gewijzigd door RobIII op 20-04-2012 15:12 ]