Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    QUERY miste SQL attraverso form

    salve a tutti,

    ho un form con due menu a tendina piś una textbox e devo consentire agli
    utenti di fare delle ricerche su tre specifici campi di una tabella del
    mio dbase scegliendo dunque quali parametri fra le opzioni di tali menu,
    piś eventualmente per parola chiave inserita nella textbox.

    Nei due menu a tendina esiste fra l'altro l'opzione "tutti" impostata
    di default; ció significa che se non si seleziona altra diversa opzione,
    per quel campo vengono selezionati TUTTI i dati di ogni riga del dbase.
    analogamente, se non si digita nulla nella textbox, non deve essere
    effettuata nessuna ricerca per parola chiave su nessun campo del dbase
    (cioé in ogni riga del dbase e per quel campo, tutti i dati sono presi in
    considerazione)

    * dunque, se non si seleziona nulla nei due menu a tendina e non si digita
    nessuna parola chiave nella textbox (TUTTI, TUTTI, ''):
    la query deve restituire l'intero contenuto del dbase.

    * se invece si seleziona ad esempio: Milano, FIAT, Rho (quale parola chiave),
    la query deve restituire tutti i record relativi agli utenti della
    provincia di "MIlano", che dispongono di una "FIAT", ma nel comune di "Rho"

    come si imposta l'istruzione di query?

    SELECT * FROM tabella WHERE .... ;

    aiuto....please



    ***

    non uccidetemi, so che probabilmente sto scrivendo qualche.. peró.
    io mi chiedevo se esistesse una qualche
    sequenza di caratteri come non so, *.* , ad esempio,
    che possa indicare la totalitį dei campi in fase di
    ricerca..
    e allora lo script potrebbe diventare cosķ:


    dal form ricevo le seguenti variabili:

    $menu01 (valore selezionato dal primo menu a tendina)
    $menu02 (valore selezionato dal secondo menu a tendina)
    $textbo (parola chiave)


    e posso scrivere, prima di fare la ricerca:

    if ($menu01 != 'tutti') // 'tutti' é il parametro di default che indica la totalitį
    {
    $parametro01 = $menu01;
    }
    else
    {
    $parametro01 = '*.* ';
    }


    if ($menu02 != 'tutti') // 'tutti' é il parametro di default che indica la totalitį
    {
    $parametro02 = $menu02;
    }
    else
    {
    $parametro02 = '*.* ';
    }

    if ($textbo != '') // é stata inserita una parola chiave
    {
    $parametro03 = $textbo;
    }
    else
    {
    $parametro03 = '*.* ';
    }

    $query="SELECT * from tabella WHERE campo01 = '$parametro01' AND campo02= '$parametro02' AND campo03 LIKE '$parametro03%'";

  2. #2
    problema risolto, di seguito lo script...
    ciaooo


    Codice PHP:
    $sequenze=0;
     
    if (
    $menu01 != 'tutto' )
    {
     
    $q01=" WHERE Provincia = '$menu01' ";
     
    $sequenze=$sequenze+1;
    }
    else
    {
     
    $q01="";



    if (
    $menu02 != 'tutto' )
    {
     if (
    $sequenze 0)   // significa che il campo Marcaveicolo é diverso da 'tutto'
     
    {
      
    $q02=" AND Marcaveicolo = '$menu02' ";
     } 
     else
     { 
      
    $q02=" WHERE Marcaveicolo = '$menu02' ";
     }
      
    $sequenze=$sequenze+1;
    }
    else
    {
     
    $q02="";



    $query="SELECT * from tabella".$q01.$q02." ORDER BY id DESC"

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.