Hello,

Voila je voudrais créer fichier csv avec ce script


<?php
header("Content-type: text/x-csv");
header("Content-disposition: attachment; filename=Historique_SNR_" . date("Ymd").".csv");

  include("../include/connection.php");
//Lecture de la data base
                             $sql = ("
               select
	YEAR(FROM_UNIXTIME(History.eventdate)) as Year,
	MONTH(FROM_UNIXTIME(History.eventdate)) as Month,
	Devices.name as DeviceName,
	Interfaces.name as InterfaceName,
	Devices.name2 as devicesName2,
	Interfaces.description as InterfaceDesc,
	SUM(case StatusTypes.name when 'Normal' then 1 else 0 end) as Normal,
	SUM(case StatusTypes.name when 'Minor' then 1 else 0 end) as Minor,
	SUM(case StatusTypes.name when 'Major' then 1 else 0 end) as Major,
	SUM(case StatusTypes.name when 'Critical' then 1 else 0 end) as Critical

from
	History
	inner join StatusTypes on History.statusid = StatusTypes.id
	inner join Cells on History.cellid = Cells.id
	inner join Interfaces on Cells.interfaceid = Interfaces.id
	inner join ServiceTypes on Cells.serviceid = ServiceTypes.id
	inner join Devices on Interfaces.deviceid = Devices.id

where
	ServiceTypes.name = 'SNR'

group by
	YEAR(F0ROM_UNIXTIME(History.eventdate)),
	MONTH(FROM_UNIXTIME(History.eventdate)),
	Devices.name,
	Interfaces.name,
	Interfaces.description

;")
 ;   
$resultat = mysql_query ($sql);
$list = "";
while ($snr = mysql_fetch_array ($resultat))
{
	$month = $snr ['Month'];
	$device = $snr ['DeviceName'];
       $interface = $snr ['InterfaceName'];
       $device2 = $snr ['InterfaceDesc'];
       $minor = $snr ['Minor'];
       $major = $snr ['Major'];
       $critical = $snr ['Critical'];
	$list .= "\"$month\",\"$device\",\"$interface\",\"$device2\",\"$minor\",\"$major\",\"$critical\"\r\n";
}
echo $list;
?>

Mais le souci c'est que j'ai une erreur sur la ligne du while
mysql_fetch_array(): supplied argument is not a valid MySQL result resource
Et je n'arrive pas a comprendre pourquoi j'ai cette erreur.

Merci de me donner une idée sur le problème.
Modifié par Prism (05 Sep 2007 - 13:08)
Salut !

Je suis nouvelle et bien moins douée que les habitués, mais je vais essayer de t'aider un petit peu !

Quand tu stockes ta requête dans la variable $sql, en fait, tu n'as pas besoin de mettre des parenthèses. Il te suffit d'écrire :

$sql = "select blabla from blabla where blablabla";

Essaye déjà ça pour éliminer les problèmes un à un.

A plus !