Voila mon objectif est de récupérer ma base de donnée sur Excel, pour cela j'utilise un code trouvé sur internet et qui normalemnt validé par la personne qui'elle l a mis en ligne. Mais moi quand je l'adapte avec ma base, ça m affiche des erreurs et des notices que j'arrive pas à résoudre.
j'ai une notice array to string conversion ? au niveau de la ligne
Code : Sélectionner tout - Visualiser dans une fenêtre à part
                    $cell->value=$row->$champs[$k];
Aussi au niveau de la fonction saveas : impossible de lire la prop saveas de la classe workbook (j'ai excel 2007). Merci de m'aider à trouver les erreurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
<?php
$date = date("d-m-Y"); 
$heure = date("H-i"); 
$vam ="$date$heure.xls";  
define("FILENAME","C:\\.xls".$vam);//define("FILENAME","C:\\Test.xls"); 
   // $conn=mysql_connect('localhost','root','') or die('Problème lors de la connexion à la BD MYSQL'); 
    //mysql_select_db('parc_transfos',$conn) or die('Problème lors de la sélection de la BD MYSQL'); 
	include_once("../db_connection.php");
    if(file_exists(FILENAME)){unlink(FILENAME);} 
    $excel=new COM("Excel.application"); 
    $excel->sheetsinnewworkbook=2;//4 feuilles Excel 
    $excel->Workbooks->Add();//début de la création du classeur 
    $book=$excel->Workbooks(1); 
    /***************************/ 
    /*la première feuille Excel*/ 
    /***************************/ 
    $res=mysql_query("SELECT identifiant,marque,date_fabrication,type,puissance,qtite_huile,valeur FROM transformateur where zone='zone1'") or die('Problème lors de la réception des enregistrements'); 
	if(mysql_num_rows($res)>0) 
      { 
        $sheet=$book->Worksheets(1);//La première feuille Excel 
        $sheet->Name="Zone1"; 
        /*$sheet->set_column('A:A', 20);*/ 
        $champs = array( $champs = array("identifiant","marque","date_fabrication","type","puissance","qtite_huile","valeur"));//les champs de la table etatcivil 
        $taille = count($champs);//Nombre de champs de la table=7 
        $total = mysql_num_rows($res);//Nombre d'enregistrements 
        $entete = array("identifiant","marque","date_fabrication","type","puissance","qtite_huile","valeur");//Première ligne du tableau Excel 
		$i=2; 
        while($row=mysql_fetch_object($res)) 
             { $j=65;//L'indice de la première colonne du tableau Excel 
               $k=0;//L'indice du chanmp de la table 
               for($s=1;$s<=($taille);$s++) 
                  {  
                    $cell=$sheet->Range(chr($j).'1');//L'entete                 
                    $cell->Interior->ThemeColor=4;// la couleur de l'entête du tableau                   
                    $cell->value="".$entete[$k]; 
                    $cell->HorizontalAlignment=-4108; 
                    $cell->Font->ColorIndex = 41;// 41-le bleu  3-pour le rouge 
                    $cell->Font->Bold = True;//écrire le titre en gras 
                    // 
                    $cell=$sheet->Range(chr($j).$i);//les valeurs des champs         
                    $cell->value=$row->$champs[$k]; 
                    $cell->Interior->ThemeColor=3;// la couleur du tableau 
                     if ($k==3){$cell->NumberFormat="jj/mm/aaaa";}//Format date de               
                         else {$cell->NumberFormat="@";}//Format text  
                    $length = mysql_field_len($res, $k+1);//la taille du champ dans la table Mysql  
                    $cell=$sheet->Range(chr($j).$i)->ColumnWidth = $length+4; 
                    $cell->VerticalAlignment; 
                    $j++;//Passer à l'autre colonne du tableau Excel 
                    $k++;//Passer à l'autre champ de la table 
                  }  
               $i++; //Passer à l'autre ligne du tableau Excel 
             }//fin de while                                    
      }//fin de if 
    else{ 
        die('La table est vide'); 
    } 
    /***********************/ 
    $book->saveas(FILENAME); 
    unset($sheet); 
    unset($book); 
    $excel->Workbooks->Close(); 
    $excel->Quit(); 
    unset($excel);     
?>