Bonsoir,
Tout d'abord le code
Cette requête fonctionne si au moins un des champs est renseigné ... Dans le cas ou l'utilisateur se contente de faire "rechercher" avec l'espoir d'avoir en retour tous les enregistrements, le WHERE fait planter la requete
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 $sql="SELECT * FROM prospects INNER JOIN finance ON prospects.idprospects = finance.idprospects WHERE "; if(isset($_GET['nom']) && !empty($_GET['nom'])) { $where .= "nomprospects LIKE '%{$_GET['nom']}%' AND "; } if(isset($_GET['ref']) && !empty($_GET['ref'])) { $where.= "prospects.refprospects = '{$_GET['ref']}' OR demandes.reference = '{$_GET['ref']}' AND"; } if(isset($_GET['tel']) && !empty($_GET['tel'])) { $where.= " telprospects LIKE '%{$_GET['tel']}%' OR gsmprospects LIKE '%{$_GET['tel']}%' AND "; } if(isset($_GET['statut']) && !empty($_GET['statut'])) { if ($_GET['statut'] != 'Tous') { $where.= "finance.statut LIKE '%{$_GET['statut']}%' AND "; } else { if(isset($_GET['origine']) && !empty($_GET['origine'])) { if ($_GET['origine'] !='Tous') { $where.='prospects.origine_origine=\''.$_GET['origine'].'\' '.'OR '.' '.'finance.origine=\''.$_GET['origine'].'\' '.'AND '; } else { if(isset($_GET['typefi']) && !empty($_GET['typefi'])) { if ($_GET['typefi'] != 'Tous') { $where.='finance.fitype=\''.$_GET['typefi'].'\' '.'AND '; } } } } } } if(isset($_GET['tri']) && !empty($_GET['tri'])) { $tri = $_GET['tri']; } // ***Finalisation de la recherche *** $where = substr($where,0,strlen($where)-5); $sql =$sql. $where.(" ORDER BY ").$tri.(" ASC");
<< mess >> SELECT * FROM prospects INNER JOIN finance ON prospects.idprospects = finance.idprospects WHERE ORDER BY ASC
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'ORDER BY ASC' at line 1 <</mess>>
Comment faire pour éliminer cette erreur ? (et quel est le principe général à connaitre dans ce cas de figure ?) Enfin, si vous connaissez un bon tuto qui explique en détail comment l'on doit construire ce type de requete, je suis preneur.
Merci et bonne soirée à tous.
Partager