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

    Aggiornamento sulla presenza di username

    In queste righe di codice mi servono per eseguire una semplice registrazione. Vicino all'imput type username io volevo far comparire una stringa in continuo aggiornamento che mi dice se tale username che l'utente sta inserendo è già inserito o no.

    registrazione.html
    codice:
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    <script type="text/javascript" src="controllo.js"></script>
    </head>
    <body>
    <script type="text/javascript">
     process();
    </script>
    <form action="registrazione.php" method="post" >
    
    
     Nome: <input type="text" name="nome" required>   
    
    
     Cognome: <input type="text" name="cognome" required>
    
    
     Citta: <input type="text" name="citta" required>  
    
    
     Via: <input type="text" name="via" required>
    
    
     Telefono: <input type="tel" name="telefono"required >
    
    
     Username: <input type="text" name="user" id="myname" required>  
    <div id="divMessage" />
    
    
     Password: <input type="password" name="password" required>
    
    
     E-mail: <input type="email" name="email" required>
    
    
     <input type="submit" value="Invia" >
    </body>
    </html>

    controllo.js
    codice:
    var xmlHttp=createXmlHttpRequestObject();
    function createXmlHttpRequestObject()
    {
    	var xmlHttp;
    	//se l'utente usa internet explorer
    	if(window.ActiveXObject)
    	{
    		try
    		{
    			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    		}
    		catch (e)
    		{
    			xmlHttp=false;
    		}
    	}
    	//se usa altri browser
    	else
    	{
    		try
    		{
    			xmlHttp=new XMLHttpRequest();
    		}
    		catch (e)
    		{
    			xmlHttp=false;
    		}
    	}
    	if(!xmlHttp)
    	alert("errore durante la creazione dell'oggeto XMLHttpRequest.");
    	else
    	return xmlHttp;
    }
    //----------------------------------------------------------------------------------------------------------------------------
    function process()
    {
    	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
    	{
    		name = encodeURIComponent(document.getElemnetById("myname").value);
    		xmlHttp.open("GET", "controlloUser.php?name=" +name, true);
    		xmlHttp.onreadystatechange=handleServerResponse;
    		xmlHttp.send(null);
    	}
    	else
    	setTimeout('process()', 1000);
    }
    //-----------------------------------------------------------------------------------------------------------------------------
    function handleServerResponse()
    {
    	if (xmlHttp.readyState ==4)
    		{
    			if (xmlHttp.status ==200)
    			{
    				xmlResponse = xmlHttp.responseXML;
    				xmlDocumentElement=xmlResponse.documentElement;
    				element.helloMessage = xmlDocumentElement.firstChild.data;
    				document.getElementById("divMessage").innerHTML= helloMessage;
    				setTimeout('process()', 1000);
    			}
    			else
    			{
    				alert("C'è stato un problema nell'accesso del server: " + xmlHttp.statusText);
    			}
    			
    		}
    }

    controlloUser.php
    Codice PHP:
    <?php
    header
    ('Content-Type: text/xml');
    echo 
    "<?xml version='1.0' encoding='UTF-8' standalone='yes'?>";
    echo 
    '<response>';
    $host="localhost";
    $username="root";
    $password="";
    $conn=mysql_connect($host,$username,$password);
    if(!
    $conn)
    {
    echo
    "errore connessione";
    }
    mysql_select_db("temporaneo"$conn)
    or die (
    "errore nella connessione con il database");
    $username=$_GET['name'];
    $sql="select username from utenti where username='$username' ";
    $ab=mysql_query($sql);
    if (
    $ab==false) die("errore nel controllo dei doppi");
    if (
    mysql_num_rows($ab)>=1) die("Il nome utente esiste, inseriscine un'altro!!");
    echo 
    '</response>';
    ?>



    In teoria mentre digito l'username vicino dovrebbe comparire la stringa "username usato" solo se l'username è veramente usato, invece non succede niente. Anche quando faccio il GET manuale del file php (controlloUser.php?name=usergiausato) mi restituisce l'errore "Errore interpretazione XML: nessun elemento trovato". Consigli????? Vi prego aiutatemi!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133

    Re: Aggiornamento sulla presenza di username

    Originariamente inviato da php102030
    ... Anche quando faccio il GET manuale del file php (controlloUser.php?name=usergiausato) mi restituisce l'errore "Errore interpretazione XML: nessun elemento trovato". Consigli????? Vi prego aiutatemi!
    Problema php direi che va gestito nel forum php (chiedi il trasferimento della discussione link segnala ad un moderatore), poi al limite vediamo ajax (comunque togli quel setTimeout e usa l'evento onkeyup nel campo myname)
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Ho aggiustato un po' di cose, ora il php mi funziona ma il javascript ancora no. Che cosa sbaglio??

    codice:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Documento senza titolo</title>
    <script type="text/javascript" src="controllo.js"></script>
    </head>
    
    <body>
    <form action="registrazione.php" method="post" >
    
    
     Nome: <input type="text" name="nome" required>   
    
    
     Cognome: <input type="text" name="cognome" required>
    
    
     Citta: <input type="text" name="citta" required>  
    
    
     Via: <input type="text" name="via" required>
    
    
     Telefono: <input type="tel" name="telefono"required >
    
    
     Username: <input type="text" name="user" id="myname" onkeyup="process()" required>  
    <div id="divMessage" />
    
    
     Password: <input type="password" name="password" required>
    
    
     E-mail: <input type="email" name="email" required>
    
    
     <input type="submit" value="Invia" >
    </body>
    </html>



    codice:
    var xmlHttp=createXmlHttpRequestObject();
    function createXmlHttpRequestObject()
    {
    	var xmlHttp;
    	//se l'utente usa internet explorer
    	if(window.ActiveXObject)
    	{
    		try
    		{
    			xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
    		}
    		catch (e)
    		{
    			xmlHttp=false;
    		}
    	}
    	//se usa altri browser
    	else
    	{
    		try
    		{
    			xmlHttp=new XMLHttpRequest();
    		}
    		catch (e)
    		{
    			xmlHttp=false;
    		}
    	}
    	if(!xmlHttp)
    	alert("errore durante la creazione dell'oggeto XMLHttpRequest.");
    	else
    	return xmlHttp;
    }
    //----------------------------------------------------------------------------------------------------------------------------
    function process()
    {
    	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
    	{
    		name = encodeURIComponent(document.getElemnetById("myname").value);
    		xmlHttp.open("GET", "controlloUser.php?name=" +name, true);
    		xmlHttp.onreadystatechange=handleServerResponse;
    		xmlHttp.send(null);
    	}
    	else
    	setTimeout('process()', 1000);
    }
    //-----------------------------------------------------------------------------------------------------------------------------
    function handleServerResponse()
    {
    	if (xmlHttp.readyState ==4)
    		{
    			if (xmlHttp.status ==200)
    			{
    				xmlResponse = xmlHttp.responseText;
    				xmlDocumentElement=xmlResponse.documentElement;
    				element.helloMessage = xmlDocumentElement.firstChild.data;
    				document.getElementById("divMessage").innerHTML= helloMessage;
    			}
    			else
    			{
    				alert("C'è stato un problema nell'accesso del server: " + xmlHttp.statusText);
    			}
    			
    		}
    }




    Non fa partire niente di niente quando immetto l'username, mentre dovrebbe dare errore.

  4. #4
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Modifica cosi js:
    codice:
    function process()
    {
    	if (xmlHttp.readyState == 4 || xmlHttp.readyState == 0)
    	{
    		name = encodeURIComponent(document.getElemnetById("myname").value);
    		xmlHttp.open("GET", "controlloUser.php?name=" +name, true);
    		xmlHttp.onreadystatechange=handleServerResponse;
    		xmlHttp.send(null);
    	}
    }
    
    function handleServerResponse()
    {
    	if (xmlHttp.readyState ==4)
    		{
    			if (xmlHttp.status ==200)
    			{
    				document.getElementById("divMessage").innerHTML= xmlHttp.responseText;
    			}
    			else
    			{
    				alert("C'è stato un problema nell'accesso del server: " + xmlHttp.statusText);
    			}
    			
    		}
    }
    e html cosi
    <div id="divMessage"></div>
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  5. #5
    Ancora niente. Credo si un problema della lettura del file js dove nn sono molto esperto. Potrebbe essere?

  6. #6
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Originariamente inviato da php102030
    Ancora niente. Credo si un problema della lettura del file js dove nn sono molto esperto. Potrebbe essere?
    Non ho capito la domanda e inoltre sviluppo solo in jquery da po' e ho perso la mano con ajax vedi se questo può aiutarti
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

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.