Bonsoir à tous,
J'ai un léger soucis pour un site internet que je suis en train de faire.
Je dois créer un script d'alerte par mail dès qu'une annonce est ajouté.
Le soucis c'est que c'est un système d'alerte multi critères avec une possibilité qu'un critère soit nul.
Le soucis c'est que je n'arrive pas à trouvé une requête qui puisse me permettre de récupéré tous les tuples qui correspondent à l'ajout de l'annonce.
Ma table qui contient toutes les demande d'alerte est de ce type, mais peux changé (:
id, email, secteur_id (varchar), surface_id (varchar), prix_id (varchar), type_id (varchar)
J'ai mis des champs varchar car je voulais mettre un liste de critère pour chaque elements tel les secteurs, les prix, etc ...
Exemple d'un champ : secteur_id : [2][4]
Cela correspond à l'id 2 et 4 pour les secteurs, cela veux dire que la personne veux être alerté dès qu'un ajout sur le secteur 2 ou 4 est effectué.
Il peux aussi être nul car cela lui est égale.
Exemple d'un tuple :
Id : 1 ; email : test@test.com ; secteur_id : [2][3] ; surface_id : [4] ; prix_id : NULL ; type_id : NULL
Voici les tuples secteur :
id : 2 ; name : Bandol
id : 3 ; name : Toulon
id : 4 ; name : Sanary
...
Tuples surface :
id : 1 ; name = 1 piece
id : 2 ; name = 2 pieces
id : 3 ; name = 3 ou 4 pieces
id : 4 ; name = 5 pieces ou plus
Donc la, la personne a pour email test@test.com, elle veux etre alerté dès qu'un annonce pour Bandol ou Toulon est ajouté et qu'elle ai 5 pieces ou plus.
J'avais un debut de requête mais qui malheureusement ne fonctionne pas :
Ici le 2 pour le like de secteur_id correspond à l'id 2 du secteur de l'annonce ajouté.
Code : Sélectionner tout - Visualiser dans une fenêtre à part Select email From table_alert WHERE secteur_id IS NOT NULL AND secteur_id IS LIKE (%[2]%) AND prix_id IS NOT NULL AND prix_id IS LIKE(%[1]%) etc ....
Avez vous une idée de comment faire pour ce que je veux ?
Je vous remercie beaucoup d'avance
Partager