• User Attivo

    problema ajax controllo su form

    Ciao a tutti!

    sto facendo un form per le registrazione e devo fare un controllo al campo username per vedere se è già presente nel database.
    Ho preso il codice da internet ma non funziona.
    Ecco il codice:

    [html]
    <script type="text/javascript" src="js/jquery-1.2.6.min.js"></script>
    <link rel="stylesheet" type="text/css" href="registrazione/style.css" />
    <SCRIPT type="text/javascript">

    pic1 = new Image(16, 16);
    pic1.src = "image/ajax-loader.gif";
    $(document).ready(function(){
    $("#username").change(function() {
    var usr = $("#username").val();
    if(usr.length >= 4)
    {
    $("#status").html('<img src="image/ajax-loader.gif" align="absmiddle"> Checking availability...');
    $.ajax({
    type: "POST",
    url: "registrazione/check.php",
    data: "username="+ usr,
    success: function(msg){

    $("#status").ajaxComplete(function(event, request, settings){
    if(msg == 'OK')
    {
    $("#username").removeClass('object_error'); // if necessary
    $("#username").addClass("object_ok");
    $(this).html(' <img src="image/tick.gif" align="absmiddle">');
    }
    else
    {
    $("#username").removeClass('object_ok'); // if necessary
    $("#username").addClass("object_error");
    $(this).html(msg);
    }

    });
    }

    });
    }
    else
    {
    $("#status").html('<font color="red">The username should have at least <strong>4</strong> characters.</font>');
    $("#username").removeClass('object_ok'); // if necessary
    $("#username").addClass("object_error");
    }
    });
    });
    //-->
    </SCRIPT>

    <form id="reg" name="reg" method="post" enctype="multipart/form-data">

        <table>
        <tr>
          <td width="200"><div align="right">Username:&nbsp;</div></td>
          <td width="100"><input id="username" size="20" type="text" name="username"></td>
          <td width="400" align="left"><div id="status"></div></td>
        </tr> 
        </table>
        [/html]
    

    E la pagina check.php:

    [php]$usernames = array('john','michael','terry', 'steve', 'donald');
    $username = $_POST['username'];
    if(in_array($username, $usernames))
    {
    echo '<font color="red">The nickname <STRONG>'.$username.'</STRONG> is already in use.</font>';
    }
    else
    {
    echo 'OK';
    }
    }[/php]

    Quando scrivo il nome appare la gif del caricamento ma poi continua a caricare all'infinito.
    Cosa c'è di sbagliato?
    Grazie!