Ricerca da un array, LIKE?

Mary Azzurro

Nuovo Utente
7 Feb 2013
14
0
0
Salve a tutti! :)

Ho una tabella "articolo" in cui è presente un campo "chiave".
Ho bisogno di una select che cerchi all'interno di quel campo prendendo i dati da un array.
Ho provato in questo modo:

PHP:
$key = "economia, mercati, nazionali, sviluppo, efficienza";
$key = str_replace(" ", "", $key);
$key = explode(",",$key);

	foreach($key as $keys){
    	$sql_ric[] = 'chiave LIKE %'.$keys.'%';
	}
$sql_ric = 'SELECT * FROM articoli WHERE '.implode(" OR ", $sql_ric) or die(mysql_error());
$risultato = mysql_query($sql_ric, $con) or die(mysql_error());
while($riga_ric = mysql_fetch_object($risultato)){
echo $riga_ric->titolo;
}

Però mi da questo tipo di errore:
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 '%economia% OR chiave LIKE %mercati% OR chiave LIKE %nazionali% OR chiave LIKE %s' at line 1

Mi sapreste aiutare?:confused:
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Prova a cambiare questa riga:
PHP:
        $sql_ric[] = 'chiave LIKE %'.$keys.'%';
In:
PHP:
        $sql_ric[] = "chiave LIKE '%".$keys."%'";
 

Mary Azzurro

Nuovo Utente
7 Feb 2013
14
0
0
Un'altra domanda... se dalla query volessi escludere un id, come potrei fare?
Ho provato così:
PHP:
$sql_ric = 'SELECT * FROM articoli WHERE '.implode(" OR ", $sql_ric).' AND idArticolo!="$id"' or die(mysql_error());
Ma non funziona, mi stampa comunque il contenuto dell'id che vorrei escludere.
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Implode()?
Ma ce l'hai già l'id o lo devo cercare prima nella tabella?
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Allora dovresti fare qualcosa del genere:
PHP:
$sql_ric = 'SELECT * FROM articoli WHERE ('.implode(" OR ", $sql_ric).') AND idArticolo!="$id"' or die(mysql_error());
 

Mary Azzurro

Nuovo Utente
7 Feb 2013
14
0
0
Allora dovresti fare qualcosa del genere:
PHP:
$sql_ric = 'SELECT * FROM articoli WHERE ('.implode(" OR ", $sql_ric).') AND idArticolo!="$id"' or die(mysql_error());

Niente, non va... Ma ho provato ad usare il != anche da un'altra parte, ma non funziona proprio! :(
PHP:
$id = $_REQUEST['id'];
$sql_altri = 'SELECT * FROM editoriale WHERE idEditoriale!="$id" ORDER BY idEditoriale DESC LIMIT 10' or die(mysql_error());

L'id c'è, ho provato a con un echo e lo stampa. Non riesco a capire dov'è che sbaglio...
 

Longo8

Utente Attivo
28 Mar 2011
1.694
0
36
Prova a stampare la query prima di eseguita e metti la direttamente in phpmyadmin.
 

Mary Azzurro

Nuovo Utente
7 Feb 2013
14
0
0
Prova a stampare la query prima di eseguita e metti la direttamente in phpmyadmin.

In phpmyadmin funziona e funziona anche se al posto di !="$id" metto !=1 ... il problema credo sia nella variabile.
Però è strano. Se faccio un echo alla variabile, il numero dell'id c'è!
 

Mary Azzurro

Nuovo Utente
7 Feb 2013
14
0
0
Risolto! Ho investito i " con i ' e funziona!

PHP:
$sql_altri = "SELECT * FROM editoriale WHERE idEditoriale!='$id' ORDER BY idEditoriale DESC LIMIT 10" or die(mysql_error());
 
Discussioni simili
Autore Titolo Forum Risposte Data
C Ricerca dato successivo in array PHP 1
K alcuni chiarimenti sul metodo di ricerca nelle stringhe o array Javascript 1
J Risultati ricerca esatti ma gestiti SEO e Posizionamento 0
F access ricerca record con apostrofo. MS Access 0
C Ricerca Prodotti Woocommerce Javascript 0
U PHP creare un file excel dopo ricerca nel DB PHP 0
G Colorare menu select attraverso ricerca php PHP 0
L PHP motore di ricerca nel sito PHP 1
G Menù a tendina di ricerca con query PHP 1
R Problema query con ricerca id numerico PHP 2
L Mysql: Nascondere le pagine dopo una ricerca PHP 1
F Visualizzazione motore di ricerca SEO e Posizionamento 2
B Stringa sql per ricerca su più campi Database 1
F Funzione Glob - ricerca file contenente una parola PHP 1
P Ricerca campo data PHP 1
L titolo del sito nella pagina di ricerca di google SEO e Posizionamento 2
A Creare un modulo di ricerca avanzata con dreamweaver HTML e CSS 0
L Ricerca valore mysql e incremento PHP 73
E Problema motore di ricerca FULL_TEXT PHP 0
motleyrulez Ricerca filtro con Ajax PHP 1
Shyson [CSS] Posizionare casella di ricerca HTML e CSS 3
P Query di ricerca profonda MySQL 0
T Query per ricerca ritardo evento MS Access 7
B Campo ricerca domini HTML e CSS 4
V Ricerca volontari questionario tesi - Ricambio Offerte e Richieste di Lavoro e/o Collaborazione 0
L Ricerca sviluppatori PHP tempo indeterminato Milano Offerte e Richieste di Lavoro e/o Collaborazione 0
S [PHP] Creare collegamento filtri di ricerca al database PHP 6
L [PHP] Ricerca su search bar esterna PHP 1
D Ente di Formazione accreditato in Regione Lazio ricerca Front End Developer Offerte e Richieste di Lavoro e/o Collaborazione 3
N [WordPress] Ricerca tema WordPress 6
Alex_70 [PHP] Ricerca con risultati cliccabili PHP 21
Federico.Marcelo Alla ricerca di scrittori post guest Offerte e Richieste di Lavoro e/o Collaborazione 0
ANDREA20 [PHP] motore di ricerca nel sito PHP 11
O [PHP] Ricerca record tramite post PHP 7
GraceHawk [MS Access] Findfirst per ricerca record MS Access 1
T [PHP] Ricerca nel database PHP 2
A [Javascript] Mostrare un marker se è vicino al risultato di ricerca con google maps Javascript 3
V Semplice barra di ricerca con filtro categorie prodotti E-Commerce 0
A Ricerca con collegamento in altro sito web Discussioni Varie 0
C [PHP] Ricerca multipla, evitare if PHP 4
F [WordPress] Plugin Ricerca per e-commerce Woocommerce WordPress 1
M [OFFRO][RETRIBUITO] Milano IT Consulting SRL - Ricerca 1 Consulente PHP Offerte e Richieste di Lavoro e/o Collaborazione 0
D [ASP] Motore di ricerca interno su 2 tabelle Classic ASP 3
A [MySQL] Ricerca in PMA MySQL 0
andreas88 Da .htm a .php, perdo le mie posizioni su Google ricerca? SEO e Posizionamento 9
P Google risultati di ricerca inappropriati SEO e Posizionamento 1
Emix [PHP] Ricerca e modifica su due tabelle PHP 26
G [PHP] FORM DI RICERCA ESTESA PHP 2
borgo italia [PHP] ricerca caratteri accentati PHP 4
P [PHP] ricerca dati PHP 1

Discussioni simili