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

    [Php - Mysql] Correttezza query

    In php devo lanciare questa query:

    codice:
    	$query = "SELECT * FROM auto WHERE marca LIKE '$marca' AND modello LIKE '$modello' AND anno >= '$yearfrom' AND anno <= '$yearto' AND km >= '$mileagefrom' AND km <= '$mileageto' AND tipo_auto LIKE '$tipo_auto' AND tipo_carrozzeria LIKE '$tipo_carrozzeria' AND trasmissione LIKE '$trasmissione' AND carburante LIKE '$carburante' AND colore LIKE '$colore' AND potenza >= '$hpfrom' AND potenza <= '$hpto' AND prezzo >= '$eurofrom' AND prezzo <= '$euroto' ";
    a cui verrà aggiunto
    codice:
    if ($climatizzatore == 's') $query = $query . "AND climatizzatore = 's' ";
    		if ($interni_pelle == 's') $query = $query . "AND interni_pelle = 's' ";
    		if ($alzacr_elettr == 's') $query = $query . "AND alzacr_elettr = 's' ";
    		if ($navigatore == 's') $query = $query . "AND navigatore = 's' ";
    		if ($tettuccio == 's') $query = $query . "AND tettuccio = 's' ";
    		if ($sedil_riscaldato == 's') $query = $query . "AND sedil_riscaldato = 's' ";
    		if ($cd == 's') $query = $query . "AND cd = 's' ";
    		if ($autoradio == 's') $query = $query . "AND autoradio = 's' ";
    		if ($abs == 's') $query = $query . "AND abs = 's' ";
    		if ($airbag == 's') $query = $query . "AND airbag = 's' ";
    		if ($airbag_pass == 's') $query = $query . "AND airbag_pass = 's' ";
    		if ($airbag_later == 's') $query = $query . "AND airbag_later = 's' ";
    		if ($chiusura_centr == 's') $query = $query . "AND chiusura_centr = 's' ";
    		if ($antifurto == 's') $query = $query . "AND antifurto = 's' ";
    		if ($controllo_trazione == 's') $query = $query . "AND controllo_trazione = 's' ";
    		if ($esp == 's') $query = $query . "AND esp = 's' ";
    		if ($trazione_integrale == 's') $query = $query . "AND trazione_integrale = 's' ";
    		if ($elaborato == 's') $query = $query . "AND elaborato = 's' ";
    		if ($cerchi_lega == 's') $query = $query . "AND cerchi_lega = 's' ";
    		if ($portapacchi == 's') $query = $query . "AND portapacchi = 's' ";
    		if ($fendinebbia == 's') $query = $query . "AND fendinebbia = 's' ";
    		if ($servosterzo == 's') $query = $query . "AND servosterzo = 's' ";
    		if ($garantito == 's') $query = $query . "AND garantito = 's' ";
    		if ($incidente == 's') $query = $query . "AND incidente = 's' ";
    		$query = $query . 'ORDER BY id DESC';
    L'errore dove è? La query viene eseguita, ma non ritorna nulla! Invece dovrebbe essere equivalente a una "SELECT * FROM auto" !

  2. #2
    Ah i vari valori $nomevar provengono da un form con invio POST. Il form è di ricerca per cui se viene selezionato qualcosa come Tutti o Da o A verranno sostituiti da %

  3. #3
    Originariamente inviato da PantWeb
    L'errore dove è? La query viene eseguita, ma non ritorna nulla! Invece dovrebbe essere equivalente a una "SELECT * FROM auto" !
    Se la query viene eseguita e non da errori non si dovrebbe parlare di errore perche' record = zero, ma di mancata soddisfazione delle condizioni WHERE. La tua query e' tutto meno che l'equivalente di SELECT * FROM AUTO.

    Aggiungi alla funzione mysql_query "OR DIE(mysql_error())" cosi' da essere certo sugli errori.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.