Filtri order by e where 'dinamici'

Pascal Pavan

Nuovo Utente
27 Ago 2012
16
0
0
Ciao a tutti, ho un problema: (nella discussione precedente mi sono espresso male!
Vorrei che attraverso una form io possa selezionare delle nazioni e che le possa poi ordinare con priorità, cioè:
zona -> priorità 2
dossier -> priorità 1
dataScarico -> priorità 3
query -> select * from pianificazioneSettimanale
order by dossier, zona, dataScarico
Chiaro il concetto?

E in caso ci fossero state checckate delle dazioni ch-> checked, I->checked la query sarebbe stata:
select * from pianificazionesettimanale
where nazione in ('CH','I')
order by dossier, zona, dataScarico

Avete idee? GRazie mille!
PHP:
<form method="POST" name="orderPianificazioneSettimanale">
    Seleziona le nazioni da visualizzare: <br>
    <input type="checkbox" name="nazione1" value="CH">CH
    <input type="checkbox" name="nazione2" value="DE">DE
    <input type="checkbox" name="nazione3" value="I">I
    <input type="checkbox" name="nazione4" value="F">F
    <input type="checkbox" name="nazione5" value="E">E <br>
    Come li vuoi ordinare/precedenza? <br>
    <input type="checkbox" name="order1" value="Zone">
    <select name="priorita1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
    </select>Zona
    <input type="checkbox" name="order1" value="Dossier">
    <select name="priorita1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
    </select>Dossier
    <input type="checkbox" name="order1" value="Mittente">
    <select name="priorita1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
    </select>Mittente
    <input type="checkbox" name="order1" value="dataCarico">
    <select name="priorita1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
    </select>Data di carico
    <input type="checkbox" name="order1" value="dataScarico">
    <select name="priorita1">
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
    </select>Data di scarico
    <br><br>
<input type="submit" name="invia" value="Invia!">     
</form>

<?php

$db = new db();

if(isset($_POST['invia'])){
    $checkedNazione = "se checcato lo salva in un array";
    $order = "se ceccati li salva in un array";
    $priorita = "di quelli ceccati recuper la priorità, cioè, quello che dovrà essere messo per primo
        nella query quando si fa order by";
    $query = "select * from pianificazione settimanle
        where nazione in ($checkedNazione)
            order by $order"; //Ma nel freattemo vorrei che se non si seleziona nessuna nazione
                              //ma si fa solo un order by, ordini i dati di tutte le nazioni.
}else{
    $query = "select * from pianificazioneSettimanale";
}
$db->api_db_execute_query($query);
$db->api_close_db();
?>
 
Ultima modifica di un moderatore:

borgo italia

Super Moderatore
Membro dello Staff
SUPER MOD
MOD
4 Feb 2008
16.042
149
63
PR
www.borgo-italia.it
ciao
intanto modificherey i checkbox
HTML:
<!-- .... -->
    <input type="checkbox" name="nazione[0]" value="CH">CH
    <input type="checkbox" name="nazione[1]" value="DE">DE
    <input type="checkbox" name="nazione[2]" value="I">I
    <input type="checkbox" name="nazione[3]" value="F">F
    <input type="checkbox" name="nazione[4]" value="E">E <br>
<!-- .... -->
poi per il where farei

PHP:
//.........

$nazioni=$_POST['nazione'];
$wh =" WHERE 1=1";//se non selzioni nulla rimane questo solo e selezioni tutti
if(is_array($nazioni)){
	foreach($nazioni as $chiave => $valore){
		if($nazioni[$chiave] != ""){
			$wh .=" OR zona ='".$valore. "' ";
		}
	}
}
//..
//quindi nella select
$query = "select * from pianificazioneSettimanale $wh ORDER BY dossier, zona, dataScarico";
//.....
prova al massimo non funzia
 
Discussioni simili
Autore Titolo Forum Risposte Data
M [VENDO] Filtri instagram su richiesta Altri Annunci 0
S [PHP] Creare collegamento filtri di ricerca al database PHP 6
maxs84 Filtri multipli da casella combinata MS Access 0
D Javascript, filtri e altri misteri Javascript 0
matteoraggi Aggiungere filtri a woocommerce WordPress 0
F Filtri in option select jQuery 1
M filtri cumulativi per tabella Javascript 1
L filtri di query [php-mysql] PHP 6
P Filtri Group by PHP 6
D Filtri alle immagini con PHP e GB PHP 15
M filtri javascript Javascript 2
M filtri collonne PHP 2
L if else (filtri per una tabella) PHP 3
S Filtri multipli per database mysql PHP 1
G visualizzare risultati ricerca dopo form nella stessa pagina e mantenimento filtri PHP 1
R filtri e maschere MS Access 0
borgo italia facebook aggira i filtri aziendali Discussioni Varie 12
Z Photoshop: manca l'opzione render per filtri Photoshop 1
C mappare un'immagine x il web con gimp(filtri/web/mappa immagine) Webdesign e Grafica 0
G Cambiare dimensione disegno fireworks senza incasinare i filtri? Webdesign e Grafica 4
I Filtri Access MS Access 0
Alex_70 Query ORDER BY PHP 18
Tommy03 Order by non funziona MySQL 6
R [MySQL] Join, Count e Order (ASC & DESC)... MySQL 6
gandalf1959 mysql query, sum(qualcosa), order by sum(qualcosa). E' possibile? PHP 14
M Attributo "order" shortcode wordpresa WordPress 0
gandalf1959 my sql query, ORDER BY su piu campi MySQL 2
A GROUP BY e ORDER BY MySQL 2
F [RISOLTO]Sub query ORDER BY su 2 tabelle PHP 8
R passare una variabile in query per ORDER BY PHP 6
Alessandro Le Mura mysql ORDER BY PHP 19
F Order by per più tabelle MySQL 2
G Group by e order by insieme! PHP 8
D PHP Order By PHP 4
P (Gratis)Cerco programmatore in ASp per Order by Offerte e Richieste di Lavoro e/o Collaborazione 0
P Order by a z Classic ASP 0
P order by desc asc Classic ASP 7
R Order by Classic ASP 3
novello88 MySQL ORDER BY [Era: ordinare i risultati di una database MySQL] MySQL 1
E select where order by MySQL 6
Monital clausole order MySQL 6
A sintassi sql per order by MS Access 2
LaKanka Problema order by con varchar PHP 5
borgo italia order by MySQL 4
J [Javascript] Where do you find time for personal projects? Javascript 0
T [php] problema creazione query select-where PHP 5
D [PHP] Update non trasferisce condizione where PHP 1
A [PHP] Problema WHERE PHP 21
alessandroz Select ... where... AND... aggiornamento PHP non funziona PHP 9
giancadeejay php WHERE per filtrare PHP 4

Discussioni simili