Ciao a tutti, ho un problema su una query e nello specifico in questa condizione di WHERE
Codice PHP:
WHERE onl = "s" AND idpr <> (?) AND datap < (?) AND generi.idgn = prodotti.genp and etichette.idet = prodotti.eticp and prodtype.idpt = prodotti.tipop and artisti.idar = prodotti.artp AND (prodotti.titp or prodotti.sottp or artisti.nomear or etichette.nomee or prodtype.descpt LIKE CONCAT("%", ?, "%"))
qua la query completa
Codice PHP:
if (isset($key)) {
//echo "idd:$last_idd / data:$last_data / chiave:$key
";
$stmt = $con->prepare( 'SELECT idpr,titp,sottp,eticp,supp,tipop,genp,idcat,datap,imgcop2,imgcop,shop,nomee,artp,artp2,artp3,artp4,artp5,divarp1,divarp2,divarp3,divarp4,tipoc,nomear,descge,descpt,digicd1,digicd2,digicd3,digicd4,digicd5,digicd6,digicd7,digicd8,digicd9,digicd10,digilk1,digilk2,digilk3,digilk4,digilk5,digilk6,digilk7,digilk8,digilk9,digilk10 FROM prodotti,generi,etichette,prodtype,artisti
WHERE onl = "s" AND idpr <> (?) AND datap < (?) AND generi.idgn = prodotti.genp and etichette.idet = prodotti.eticp and prodtype.idpt = prodotti.tipop and artisti.idar = prodotti.artp AND (prodotti.titp or prodotti.sottp or artisti.nomear or etichette.nomee or prodtype.descpt LIKE CONCAT("%", ?, "%"))
ORDER BY datap DESC, idpr DESC LIMIT 0, 20' );
$stmt->bind_param('iss', $last_idd, $last_data, $key);
$stmt->execute();
$stmt->store_result();
$num_of_rows_k = $stmt->num_rows;
}
sembra avere problemi dove gli dico che la variabile $key deve cercarla in più campi..
Codice PHP:
AND (prodotti.titp or prodotti.sottp or artisti.nomear or etichette.nomee or prodtype.descpt LIKE CONCAT("%", ?, "%"))
sembra invece funzionare se ne controllo uno alla volta..
Codice PHP:
AND (artisti.nomear LIKE CONCAT("%", ?, "%"))
o
Codice PHP:
AND (prodotti.titp LIKE CONCAT("%", ?, "%"))
molto probabilmente sto sbagliando a scrivere la condizione..
scusate se non mi sono spiegato bene..spero possiate aiutarmi.
Grazie