Visualizzazione dei risultati da 1 a 4 su 4
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302

    Come si fa la ricerca con i caratteri jolly o meglio con LIKE

    Salve raga,
    ho una form di ricerca che esegue questa query nel db,

    codice:
    $query = "SELECT * FROM Commesse WHERE 1";
    
    
    if (!empty($cliente)) {
        $query .= " AND `cliente` = '$cliente'";
    }
    if (!empty($targa)) {
        $query .= " AND `targa` = '$targa'";
    }
    
    
    if (!empty($data)) {
        $query .= " AND `data` = '$data'";
    }
    }
    allo stato attuale se effettuo ad esempio una ricerca cliente, devo per forza mettere il nome del cliente così come scritto nel db, altrimenti la ricerca fallisce, se il cliente si chiama "PIPPO PLUTO" se inserisco solo "PIPPO" non mi trova nulla.

    Come posso risolvere, o meglio su questa query come posso implementare il "LIKE" ?

    Grazie
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    `cliente` LIKE '%$cliente%'"

    % è il carattere Jolly, come ho scritto io, se cerchi pippo ti trova qualsiasi stringa contenente 'pippo' quindi anche se è preceduto o seguito da altri caratteri, per intenderci ti trova: pippo pluto, pluto pippo, pippippolo paolino...

    Se scrivi '%$cliente' trova solo le stringhe che finiscono col nome cercato, quindi se cerchi 'pippo' trova 'pluto pippo' ma non 'pippo pluto'

    Analogamente scrivendo '$cliente%' e cercando pippo ti trova 'pippo pluto', ma non 'pluto pippo'.

    Comunque ti sposto nella sezione Database, la domanda è più inerente a tale sezione e in caso di necesità sarà più facile avere ulteriori informazioni.

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2010
    Messaggi
    302
    Sei un mito ...
    Grazieeeeeeeeeeeee
    Se volete che la funzione di un programma non venga scoperta dall'utente, descrivetela nella documentazione...

  4. #4
    bastano 2 secondi di ricerca prima di postare... http://www.risorse.net/mysql/operatori_confronto.asp e mille altri link...
    Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
    Albert Einstein

    Siate Affamati, siate Folli, siate Onesti e siate Generosi

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.