• User Newbie

    Jquery autocomplete: mysql_fetch_array() expects parameter 1 to be resource

    Salve a tutti! Come da titolo ho il seguente problema e chiedo il vostro aiuto...

    Utilizzo le funzioni autocomplete di jquery in un gestionale sviluppato con php e mysql. L'utente compila un campo input e viene "aiutato" nella compilazione grazie ad autocomplete.

    Il fatto è che lo script funziona a volte sì ed altre no, generando l'errore "Warning: mysql_fetch_array() expects parameter 1 to be resource, boolean given in autocomplete.php...".

    Credendo che il server non riuscisse ogni volta a caricare in tempo tutta la pagina autocomplete.php ho provato ad integrare un delay nella funzione autocomplete, ma nonostante il delay funzioni correttamente (si nota infatti un ritardo nella visualizzazione dei risultati) l'errore si ripresenta lo stesso (sempre alcune volte sì ed altre no).

    Per poter dare una migliore comprensione includo di seguito il codice utilizzato:

    Pagina frontend.html
    [HTML]
    <script type="text/javascript" src="jquery/jquery.js"></script> //jQuery 1.2.6 - New Wave Javascript
    <script type="text/javascript" src="jquery/jquery.autocomplete.js"></script> //jQuery Autocomplete plugin 1.1
    <link rel="stylesheet" type="text/css" href="jquery/jquery.autocomplete.css">
    <script>
    $(document).ready(function(){
    $("#cognomenome").autocomplete("autocomplete.php", {delay: 500,selectFirst: true});
    });
    </script>

    <input class="form" type="text" name="cognomenome" id="cognomenome" size="41" maxlength="60">[/HTML]

    Pagina autocomplete.php
    [PHP]
    <?
    require_once("../_conn/db.php");

    //RECUPERO I DATI DALLA TABELLA SERVIZI IN BASE ALLA RICERCA
    $sql = "SELECT ser_cognomenome FROM servizi WHERE ser_cognomenome LIKE '%".$_GET['q']."%' GROUP BY ser_cognomenome ORDER BY ser_cognomenome";
    $res = mysql_query($sql);

    while ($row = mysql_fetch_array($res))
    {
    echo $row['ser_cognomenome']."\n";
    }
    ?>
    [/PHP]

    Ho provato diversi modi di visualizzazione dei risultati, anche il metodo array con json (o simile, ora non ricordo), ma sempre con esito negativo. La cosa più sconcertante per me è che lo script funziona l'80% delle volte, senza che io faccia niente di particolare.