[PHP] Problema creazione query a numero di parametri variabile

Lollo82

Nuovo Utente
8 Ott 2017
4
0
1
Buongiorno ragazzi. Non sapevo dove postare la domanda trattandosi della creazione di una query. Ma essendo il problema la creazione della stringa ho reputato più corretto inserirla nella sezione php e non mysql. Se ho sbagliato chiedo scusa...
Veniamo al dunque... Eseguo una query di SELECT su una colonna di una tabella. E i risultati di tale query che possono essere uno, due o al massimo tre valori saranno il WHERE di una query successiva. I risultati della prima query li memorizzo all'interno di un array.
La mia difficoltà è... Come creo la query con un numero di WHERE che può variare??? L'idea di partenza era di usare il foreach concatenando OR id...=$array. Ma dopo il WHERE mi ritroverei un OR seguito da nulla...
Sicuramente la soluzione è la più stupida del mondo, ma vi giuro... Non mi viene. E non so manco cosa potrei googolare.
Grazie mille a tutti ragazzi.
 

Lollo82

Nuovo Utente
8 Ott 2017
4
0
1
Buonasera ragazzi. Ho risolto reparando i valori dell'array con la virgola utilizzando implode e ho passato la variabile alla clausula WHERE utilizzando id... IN (%variabile)
Grazie mille lo stesso e scusate il disturbo.
 

macus_adi

Utente Attivo
5 Dic 2017
1.343
91
48
IT/SW
Anche se risolto potresti provare questo:
NB: Ricorda di inserire i "QUOT" in caso di stringa!
PHP:
$string_query='SELECT * FROM my_tbl WHERE';

$input=['id'=>1,'name'=>'giorgio','stato'=>0];
$string_query.=crea_query($input);

$input=['id'=>1,'id'=>2,'id'=>1000,...];
$string_query.=crea_query($input,'OR');

function crea_query($input,$type='AND'){
$string='';
   foreach($input as $k=>$v){
       $string.=' '.$type.' '.$k.' = '.$v;
   }
return $string;
}
 

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.046
150
63
PR
www.borgo-italia.it
ciao
un altro metodo può essere questo
se nel WHERE metti 1=1 ,sempre vero, e le varie clausole non vengono scritte in pratica è come non scrivere il WHERE, ti schematizzo
PHP:
//...
$we1=$we2="";
//esempio valorizzi i $weXY da un $_POST
if(!empty($uno)){$we1=" OR uno=\"$uno\"";}
if(!empty($due)){$we2=" OR due=\"$due\"";}
//e quanti altri servono
$query ="SELECT * FROM tabelle WHERE 1=1 $we1 $we2";
//....
in questo modo puoi combnare gli OR don gli AND e non ti rimane un OR o un AND sul fondo
 
Discussioni simili
Autore Titolo Forum Risposte Data
T [php] problema creazione query select-where PHP 5
loois Ho un problema nella creazione di un sistema di commenti in PHP PHP 11
C [PHP] Problema con creazione csv PHP 3
C usare un foglio php per la creazione di un excel: piccolo problema PHP 2
B Problema creazione tabella tramite PHP PHP 12
K [php] Problema con inner join PHP 4
K [PHP] Problema con variabili concatenate. PHP 1
T ALTRO PROBLEMA CON ARRAY PHP PHP 1
D problema php mysql PHP 1
D problema php mysql PHP 1
Z Problema di sincronizzazione PAYPAL con PHP PHP 1
A Problema checkout carrello php PHP 2
G Problema caricamento tabelle MySql da PhP PHP 0
M Problema con php per calcolo costo percentuale PHP 7
O Problema Formmail in PHP su Aruba PHP 0
WebmasterFioriniAndrea Chat e php [problema] PHP 3
L [PHP] Problema con Telegram PHP 1
WebmasterFioriniAndrea [PHP] Problema che non mi fa vedere niente PHP 2
K Help: problema con uno script di booking in php! PHP 0
A [PHP] Problema query insert [RISOLTO] PHP 14
N [Apache] problema con estensione php Apache 0
C [PHP] Problema con download file PHP 0
M [PHP] Problema con preg_match PHP 1
gandalf1959 [PHP] problema con l'utilizzo di Header PHP 3
K [RISOLTO] Problema Griglia Php+Mysql PHP 13
M [PHP] Problema con query select PHP 2
L Problema jQuery validation AJAX (PHP 7) PHP 6
L Problema funzione mail() PHP PHP 3
S [PHP] Problema con istruzione "use" PHP 23
A Problema PHP PHP 1
M [PHP] problema if PHP 3
L [PHP] Problema su codice o server PHP 5
T [PHP] problema maggiore e minore PHP 4
Cosina [PHP] fwrite problema con le parole accentate PHP 9
M [PHP] Problema search form PHP 3
F [PHP] Problema con number_format PHP 3
L [PHP] problema count messo in una funzione. PHP 1
P [PHP] Progettino CRUD di esercitazione. Problema su $_FILE. PHP 9
trattorino [PHP] problema entrata immagini insert PHP 1
C Apache Cordova problema con php Programmazione 1
trattorino problema raccapricciante php conteggio query PHP 4
T PHP+MYSQL: problema con quelle maledette lettere accentate... PHP 5
F [PHP] Problema con array multidimensionale PHP 4
F Problema con pagine login in PHP PHP 2
M [PHP] Problema script ricezione e invio posta... PHP 1
Kolop [RISOLTO][PHP] Problema Pagination PHP 2
C [PHP] Problema Invio Email Elseif PHP 2
A [PHP] Problema invio mail con funzione mail() PHP 3
gandalf1959 problema con la codifica caratteri accentati e speciali tra php e mysql PHP 3
L [PHP] Problema Script 'Not Found' PHP 4

Discussioni simili