Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200

    Problema con WHERE LIKE...

    Buonasera, sto cercando di fare un sistema di filtri e vorrei che cercasse una stringa contenuta in un campo della tabella sul db. perciò ho scritto così:
    Codice PHP:
    $where .= "AND tipo LIKE '%$filtro%'"
    ma mi trova solo i campi di tipo che hanno solo la variabile $filtro es.(ciao $filtro,non lo trova e, $filtro, lo trova)

  2. #2
    ciao, potresti mettere una parte di php in +, così è un po' incompleto
    DigitalWeb Italia - 333.7806821 / info@digitalwebitalia.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    ok, ma la parte interessata è quella precedente

    Codice PHP:
        if($f_data_da1!=''){
            
    $where .= "AND data >= '$f_data_da1'";
        }
        if(
    $f_data_a1!=''){
            
    $where .= "AND data <= '$f_data_a1'";
        }
        if(
    $f_app1!=''){
            
    $where .= "AND applicazione = '$f_app1'";
        }
        if(
    $f_tipo1!=''){
            
    $where .= "AND tipologia LIKE '%$f_tipo1%'";
        }
        if(
    $f_titolo1!=''){
            
    $where .= "AND titolo = '$f_titolo1'";
        }
        if(
    $f_stato1!=''){
            
    $where .= "AND stato = '$f_stato1'";
        }
        if(
    $f_v1!=''){
            
    $where .= "AND verifica = '$f_v1";
        }
        if(
    $f_prog1!=''){
            
    $where .= "AND programmatore = '$f_prog1'";
        }
        if(
    $where1 == $where){
            
    $where='';
        } 

  4. #4
    Posta tutto il codice nel quale costruisci la select.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  5. #5
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    ok scusa non avevo capito

    Codice PHP:
    if($f_data_da1!=''){ 
            
    $where .= "AND data >= '$f_data_da1'"
        } 
        if(
    $f_data_a1!=''){ 
            
    $where .= "AND data <= '$f_data_a1'"
        } 
        if(
    $f_app1!=''){ 
            
    $where .= "AND applicazione = '$f_app1'"
        } 
        if(
    $f_tipo1!=''){ 
            
    $where .= "AND tipologia LIKE '%$f_tipo1%'"
        } 
        if(
    $f_titolo1!=''){ 
            
    $where .= "AND titolo = '$f_titolo1'"
        } 
        if(
    $f_stato1!=''){ 
            
    $where .= "AND stato = '$f_stato1'"
        } 
        if(
    $f_v1!=''){ 
            
    $where .= "AND verifica = '$f_v1"
        } 
        if(
    $f_prog1!=''){ 
            
    $where .= "AND programmatore = '$f_prog1'"
        } 
        if(
    $where1 == $where){ 
            
    $where=''
        }

    $resul mysql_query("SELECT * FROM sviluppo WHERE 1 = 1 ".$where." ORDER BY ".$ordina." ".$senso); 

  6. #6
    Qui mancano gli apici finali:

    Codice PHP:
    ...
        if(
    $f_v1!=''){ 
            
    $where .= "AND verifica = '$f_v1"
        }  
    ... 
    Se più di una condizione if è vera gli AND vengono tutti attaccati senza spazio. Stampa la query prima di eseguirla.
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  7. #7
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    ho corretto gli spazi e gli apici ora è
    Codice PHP:
        if($f_data_da1!=''){
            
    $where .= " AND data >= '$f_data_da1'";
        }
        if(
    $f_data_a1!=''){
            
    $where .= " AND data <= '$f_data_a1'";
        }
        if(
    $f_app1!=''){
            
    $where .= " AND applicazione = '$f_app1'";
        }
        if(
    $f_tipo1!=''){
            
    $where .= " AND tipologia LIKE '%$f_tipo1%'";
        }
        if(
    $f_titolo1!=''){
            
    $where .= " AND titolo = '$f_titolo1'";
        }
        if(
    $f_stato1!=''){
            
    $where .= " AND stato = '$f_stato1'";
        }
        if(
    $f_v1!=''){
            
    $where .= " AND verifica = '$f_v1'";
        }
        if(
    $f_prog1!=''){
            
    $where .= " AND programmatore = '$f_prog1'";
        } 
    ma restituisce questa query
    Codice PHP:
     SELECT FROM sviluppo WHERE 1 AND titolo 'sms' 
    e non questa come serve a me
    Codice PHP:
    SELECT FROM sviluppo WHERE 1 AND titolo LIKE '%sms%' 

  8. #8
    Originariamente inviato da foffo7
    ho corretto gli spazi e gli apici ora è
    Codice PHP:
        if($f_data_da1!=''){
            
    $where .= " AND data >= '$f_data_da1'";
        }
        if(
    $f_data_a1!=''){
            
    $where .= " AND data <= '$f_data_a1'";
        }
        if(
    $f_app1!=''){
            
    $where .= " AND applicazione = '$f_app1'";
        }
        if(
    $f_tipo1!=''){
            
    $where .= " AND tipologia LIKE '%$f_tipo1%'";
        }
        if(
    $f_titolo1!=''){
            
    $where .= " AND titolo = '$f_titolo1'";
        }
        if(
    $f_stato1!=''){
            
    $where .= " AND stato = '$f_stato1'";
        }
        if(
    $f_v1!=''){
            
    $where .= " AND verifica = '$f_v1'";
        }
        if(
    $f_prog1!=''){
            
    $where .= " AND programmatore = '$f_prog1'";
        } 
    ma restituisce questa query
    Codice PHP:
     SELECT FROM sviluppo WHERE 1 AND titolo 'sms' 
    e non questa come serve a me
    Codice PHP:
    SELECT FROM sviluppo WHERE 1 AND titolo LIKE '%sms%' 
    E perche dovrebbe restituirti "LIKE ..." se tu hai:

    Codice PHP:
    ...
        if(
    $f_titolo1!=''){
            
    $where .= " AND titolo = '$f_titolo1'";
        } 
    ... 
    "Mai discutere con un idiota. Ti trascina al suo livello e ti batte con l'esperienza." (Oscar Wilde)

  9. #9
    Utente di HTML.it
    Registrato dal
    Nov 2010
    Messaggi
    200
    ecco!
    io scrivevo
    Codice PHP:
     LIKE '%$f_tipo1%' 
    ma ero convinto di scrivere
    Codice PHP:
     LIKE '%$f_titolo1%' 

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 © 2025 vBulletin Solutions, Inc. All rights reserved.