Salut tout le monde,

je bosse sur un site internet et je fais du tri par rapport à un database.
Je code en PHP et utilise un server SQL voila mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
<div align="center"><strong><a href="index.php">All </a>-<a href="index.php?letter=A"> A</a> - <a href="index.php?letter=B">B</a> - <a href="index.php?letter=C">C</a> - <a href="index.php?letter=D">D</a> - <a href="index.php?letter=E">E</a> - <a href="index.php?letter=F">F</a> 
.....</strong></div>
et voila ma procedure :

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
 
CREATE PROCEDURE get_Species_Name
@letter char(1),
@audience int
 
AS
-- audience 
-- 1 = scientific
-- 2 = kids
-- 3 = adults
 
 
if @audience = 1 -- scientific
	begin
	SELECT Species_Name, Species_Latin_name, Species_Length, Species_Weight 
	FROM Species WHERE Species_Name  LIKE @letter + '%'
	ORDER BY Species_Name
	end
else
	begin
	SELECT Species_Name, Species_Length, Species_Weight 
	FROM Species WHERE Species_Name  LIKE @letter + '%'
	ORDER BY Species_Name
	end
GO
et ma requête :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
$audience=1;
$query = mssql_init('get_Species_Name', $connection);
mssql_bind($query, "@letter", &$_GET['letter'], SQLCHAR);
mssql_bind($query, "@audience", &$audience, SQLINT2);
$result = mssql_execute($query);


Je le trouve un peu lourd et je suis sûr qu'il y a moyen de l'aléger. D'autant plus que j'aimerais faire apparaitre que les lettres qui ont au moins 1 enregistrement. Sinon ça ne sert à rien d'afficher une page vide...

Merci d'avance