Ciao a tuttiho un problema con una query ovvero ho due tabelle:
la prima 'CTAEGORIA'
cate_id | cate_nome
la seconda 'utente'
ute_id | ute_email | ute_nome | ute_cate_id
il codice che ho è questo:
Codice PHP:
$cat1='';if (isset($_POST['utente'])){$cat1=$_POST['utente'];}
$cat2='';if (isset($_POST['azienda'])){$cat2=$_POST['azienda'];}
$cat3='';if (isset($_POST['enoteca'])){$cat3=$_POST['enoteca'];}
$cat4='';if (isset($_POST['ristorante'])){$cat4=$_POST['ristorante'];}
$cat5='';if (isset($_POST['winebar'])){$cat4=$_POST['winebar'];}
$cat6='';if (isset($_POST['prova'])){$cat4=$_POST['prova'];}
$sql='SELECT ute_id,ute_email FROM utente INNER JOIN categoria WHERE utente.ute_cate_id=categoria.cate_id AND categoria.cate_nome="'.$cat1.'" ';
if ($cat2!=''){$sql=$sql.' OR categoria.cate_nome="'.$cat2.'"';}
if ($cat3!=''){$sql=$sql.' OR categoria.cate_nome="'.$cat3.'"';}
if ($cat4!=''){$sql=$sql.' OR categoria.cate_nome="'.$cat4.'"';}
if ($cat5!=''){$sql=$sql.' OR categoria.cate_nome="'.$cat5.'"';}
if ($cat6!=''){$sql=$sql.' OR categoria.cate_nome="'.$cat6.'"';}
Facendo così in teoria dovrebbe mandarmi la mail SOLO alla o alle categorie selezionate, ma me lo manda a tutte indipendentemente da quella che seleziono: la quesry che mi stampa è questa:
SELECT ute_id,ute_email FROM utente INNER JOIN categoria WHERE utente.ute_cate_id=categoria.cate_id AND categoria.cate_nome="" OR categoria.cate_nome="enoteca"
cosa c'è che non va? chi può aiutarmi? grazie simone