Visualizzazione dei risultati da 1 a 7 su 7

Visualizzazione discussione

  1. #1

    Errore misterioso in query SQL

    ciao a tutti...

    sto sviluppando una web app per un laboratorio di analisi. Il problema è che hoc reato una funzione di ricerca libera in alcune tabelle, ad esempio quella clienti. Poichè la ricerca libera deve essere effettuata su tutti i campi della tabella ho creato una funzione di classe che preleva dalle tabelle di sistema i nomi dei campi mettendoli in un array e li usa poi in un ciclo FOREACH epr costruire la query di ricerca libera, come nel codice seguente:

    Codice PHP:
    // TESTO contiene il testo da cercare liberamente in tutta la tabella
    $param "%" urldecode($_REQUEST['testo']) . "%";$sql "SELECT * FROM anaclienti WHERE";
    // crea un array coi nomi dei campi della tabella scelta
    $fields $cliente->getFieldsTableNames("anaclienti");
    foreach (
    $fields as $field)
       
    $sql .= " LOWER(CONVERT(" $field['Field'] . " USING utf8mb4)) LIKE '" $param "' OR";
    $sql .= substr($sql0strlen($sql) - 3);
    // crea un array di record
    $rows $cliente>arrayRecords($sql); 
    ma la query non viene eseguita per un misterioso errore di sintassi "ORSELECT * FROM anaclienti WHERE" ecc !!! come fa ad apparire un OR all'inizio della query???
    Ultima modifica di Emulman; 29-10-2015 a 12:23

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.