Soucis avec exportation excel

Eléphanteau du PHP | 39 Messages

27 mars 2008, 15:22

Bonjour,

J'ai un soucis ! J'ai mis un bouton qui me permet d'exporter vers excel mais cela ne fonctionne pas.. voici mon code:
<?
include("hydrus.php5");
//Verification des resultats
?>
<script language="JavaScript" type="text/javascript">

       function ExportExcel() {
               var oExcel;                             // Open Excel
               var oExcelSheet;                        // Sheet Excel
               var oWkBooks;

               // COPY THE CURRENT PAGE
               textRange = document.body.createTextRange();
               textRange.moveToElementText(divMain);
               textRange.execCommand('Copy');

               // OPEN EXCEL
               oExcel = new ActiveXObject('Excel.Application');
               oWkBooks = oExcel.Workbooks.Add;
               oExcelSheet = oWkBooks.Worksheets(1);
               oExcelSheet.Application.Visible = true;                
                      
               oExcelSheet.Activate();

               oExcel.ActiveSheet.Range('A1').Select;
               oExcel.ActiveCell.PasteSpecial(0,false,false);
                                     
               oExcel.ActiveSheet.Cells.EntireColumn.AutoFit;
               oExcel.ActiveSheet.Cells.EntireRow.AutoFit.AutoFit;
               oExcel.ActiveSheet.Range('A1').Select;
 }                               
</script>


<title> Menu </title>


<style type="text/css">
<!--
#Layer1 {
	position:absolute;
	left:522px;
	top:463px;
	width:19px;
	height:28px;
	z-index:1;
}
.Style6 {
	font-family: "Segoe UI";
	font-size: 9px;
}
#Layer2 {
	position:absolute;
	left:410px;
	top:239px;
	width:596px;
	height:601px;
	z-index:1;
}
#Layer4 {	position:absolute;
	left:11px;
	top:15px;
	width:193px;
	height:77px;
	z-index:14;
}
.Style19 {font-family: "Segoe UI"; font-size: xx-small; }
#Layer3 {
	position:absolute;
	left:11px;
	top:169px;
	width:1228px;
	height:27px;
	z-index:15;
}
.Style40 {font-family: "Segoe UI"; font-size: 12px; color: #000000; }
#Layer5 {
	position:absolute;
	left:9px;
	top:433px;
	width:1238px;
	height:23px;
	z-index:16;
}
#Layer6 {
	position:absolute;
	left:11px;
	top:93px;
	width:1242px;
	height:27px;
	z-index:17;
}
#Layer7 {
	position:absolute;
	left:10px;
	top:99px;
	width:1231px;
	height:31px;
	z-index:15;
}
#Layer8 {
	position:absolute;
	left:-4px;
	top:189px;
	width:1232px;
	height:34px;
	z-index:16;
}
-->
</style>

<div id="Layer7">
  <div id="divMain">
		
      <table width="900" border="1" bordercolor="#000000" class="Style19">
        <? echo "Repas Normaux pour le"; echo "&nbsp;"; echo $_GET['jour']; echo "&nbsp;"; echo "de la semaine";echo "&nbsp;"; echo $_GET['semaine'];?>
		<tr>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">Nom</th>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">Entr&eacute;e</th>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">R&eacute;sistance </th>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">L&eacute;gumes</th>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">Fromage</th>
          <th width="150" align="center" valign="middle" class="Style19" scope="col">Dessert</th>
        </tr>
        <?
$requete_txt = "SELECT * FROM `menu_utilisateur` WHERE menu_semaine = ".$_GET['semaine']." and menu_jour = '".$_GET['jour']."' ORDER BY menu_jour ";
				$result = $bdd->result_to_array($bdd->query($requete_txt));
				for($i=0;$i<count($result);$i++)
					{
					print("<td align='center' valign='middle' >".stripslashes($result[$i][3])."</td>");
					print("<td align='center' valign='middle'>".stripslashes($result[$i][4])."</td>");
					print("<td align='center' valign='middle'>".stripslashes($result[$i][5])."</td>");
					print("<td align='center' valign='middle'>".stripslashes($result[$i][6])."</td>");
					print("<td align='center' valign='middle'>".stripslashes($result[$i][7])."</td>");
					print("<td align='center' valign='middle'>".stripslashes($result[$i][8])."</td>");
					print("</tr>");
					}
?>
      </table>

</div id="divMain">
</div>









<div id="Layer4">
  <td align="center" width="100%" class="buttonheading">
      <fieldset>
      <span class="Style40">Repas "Normaux"</span>
	</br>
      <tbody>
        <tr> </br>
            <? //<input name="image" type="image" onClick="imprime_zone('commande', 'fr');" value="Imprimer" src ="images/print.PNG" alt= "J'imprime le rapport..." />?>
            <input name="xls" type="image" onclick="ExportExcel();" value="Imprimer" src ="images/xls.PNG" alt= "J'exporte le rapport vers Excel..." />
			<a href="roseline.php5"><img src="images/restore.png" border="0" /></a>
			<? echo "<a href='roseline3.php5?semaine=".$_GET['semaine']."&jour=".$_GET['jour']."'><img src='images/restore2.png'border='0'/></a>"; ?>
           
        </tr>
      </tbody>
      </fieldset>
  </td>
</div>
ca marche sur mon serveur WAMP mais pas sur le serveur XAMP...
Comment faire...
Merci

Eléphant du PHP | 79 Messages

27 mars 2008, 15:34

Qu'entends tu par ça ne fonctionne pas ?
Est ce une erreur PHP ou Javascript ?
As-tu un message d'erreur ?

Parce que je ne vois pas vraiment :)

Eléphanteau du PHP | 39 Messages

27 mars 2008, 15:36

il me mets "un composant ActiveX ne peut pas créer un objet".
mais quand je suis sur l'autre serveur pas de pb .. que faire..

canthurtme
Invité n'ayant pas de compte PHPfrance

20 juin 2008, 15:18

Il faut juste que tu actives la gestion des Scripts activeX dans outils-->option_internet-->securité-->-->Personnalisé le niveau!

Voila

ViPHP
ViPHP | 4039 Messages

20 juin 2008, 15:41

Il faut juste que tu actives la gestion des Scripts activeX dans outils-->option_internet-->securité-->-->Personnalisé le niveau!

Voila
un peu de précaution quand même.. ajoute le domaine (sous IE) au groupe de confiance (ou carrément réseau local), et puis tu pourras paramétrer le niveau de sécurité du groupe. (activer l'un ou l'autre contrôle activeX). Surfer le net avec une sécurité globale au plus bas c'est.. courageux.
Mais qu'importe. (je suis ici - dernier petit projet)
Berze going social.