Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2013
    Messaggi
    51

    Clausola where sql e variabili vuote

    Salve a tutti sto riproducendo una ricerca di annunci simile ai siti già esistenti e guardando sui siti più famosi ho visto che ad esempio un utente può scegliere la marca di un auto ma non il modello e i risultati vengono mostrati lo stesso, però avendo una query strutturata in questo modo se l'utente non seleziona nessun modello, non vengono mostrati i record, come posso fare a escludere dalla query i campi vuoti?

    Codice PHP:
    $sql "SELECT * FROM annunciauto INNER JOIN regioni ON annunciauto.idregione = regioni.idregioneINNER JOIN province ON annunciauto.idprovincia = province.idprovinciaINNER JOIN marcheauto ON annunciauto.idmarca = marcheauto.idmarcaWHERE annunciauto.idmarca = $idmarca
    AND annunciauto.idmodello = 
    $idmodello";
    $result mysql_query($sql); 
    le variabili $idmarca e $idmodello le ricevo da una select list

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,505
    Questo perché la tua query, in caso non si passi il modello, diventa: AND annunciauto.idmodello = ''

    Ovvero cerca i record con il campo idmodello vuoto o pari a 0, a seconda di come è strutturata la tabella.
    Ovviamente se non hai record con campo idmodello vuoto o pari a 0 non troverà niente.

    Devi generare la query dinamicamente, se $idmodello è valorizzato, aggiungi la parte "AND annunciauto.idmodello = $idmodello", altrimenti no.

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2013
    Messaggi
    51
    Ti ringrazio, proverò e ti farò sapere

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.