Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [jquery] validazione form

    Buongiorno a tutti sto cercando di applicare un controllo sull'input type.
    Il controllo consiste nel verificare la presenza del dato scritto nel mio database.
    Purtroppo non mi viene indicato nessun tipo di errore e vi vado a esporre il codice utilizzato..

    codice:
    $("#form_da_validare").validate({
     rules: { 
               c140: { 
                       remote: "../php/check-mail.php" //verifica presenza
                }
              },
              messages: { 
               c140: { 
               remote: "Username già utilizzata" }
              },
              submitHandler: function(form) { alert('I dati sono stati inseriti correttamente'); form.submit(); },
              invalidHandler: function() { alert('I dati inseriti non sono corretti, ricontrollali....'); }, });
    Mentre il codice check-mail è il seguente
    Codice PHP:
    <?php
    $Field140 
    $_REQUEST['c140'];
    $sql ="SELECT * FROM xxx WHERE Field140='".$Field140."' ";
    $rs mysql_query($sql) or die(mysql_error());
    $nr mysql_num_rows($rs);
        if(
    $nr!=0){
            echo 
    "false";
        }else{
            echo 
    "true";
        }
    ?>
    Ora non essendo esperto di jquery mi chiedevo dove potrebbe essere l'errore.
    Ovviamente sono state incluse le librere...

    Grazie a tutti...

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    Hai verificato che arrivi almeno alla parte php? vedi qualche errore nella console javascript? hai una pagina pubblica dove vedere lo script in azione?

  3. #3
    Non ci avevo pensato e controllando mi indica il seguente errore
    Uncaught TypeError: Object [object Object] has no method 'validate'

    Cosa vuol dire ?

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    ci sono dei problemi nelle librerie che importi:

    - assicurati di aver importato jquery correttamente
    - assicurati di includere prima il framework e dopo il plugin(prima jquery e poi validation)
    - se includi altri framework è possibile che vadano in conflitto

  5. #5
    ok ho controllato e ora sembra funzionare... ovvero invece che remote ho inserito required e mi visualizza l'errore...
    Cosa che non avviene con il remote... non è che ho sbagliato qualcosa nel codice?
    Per esempio è giusto che la variabile venga dichiarata con il REQUEST alla fine non viene inviato il dato o sbaglio?

  6. #6
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    se levando il remote funziona allora come hai già intuito molto probabilmente il problema è nella parte php... puoi chiedere di farti spostare nella sezione php, anche perche il codice js a me pare corretto cosi com'è. Assicurati anche che il path relativo del file php sia corretto.

  7. #7

    validazione form jquery

    Buongiorno a tutti sto cercando di applicare un controllo sull'input type che verifichi il corretto inserimento dell indirizzo email ed in caso positivo invii il form.

    Questo è il codice jquery che ho creato:

    codice:
      <script type="text/javascript">
    	(function($){
    	$(document).ready(function() {
    		$('#form2').click(function(e){
    		
    			e.preventDefault();
                var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
                var email  = $('#email_newsletter').val(),
    				data_html,
    				success = $('#success');
    
                if(email == ""){
             
    			success.html('<div class="alert alert-error">Your email is required! Please Try Again!</div>')  ; 
                }else if(reg.test(email) == false){
              
    		success.html('<div class="alert alert-error">Invalid Email Address! Please Try Again!</div>')  ;
                }
    		
    			
                document.form2.submit();
           });
    	});
    })(jQuery);
        </script>
    e questo è il form
    Codice PHP:
    <form action="registrati.php" method="post" enctype="multipart/form-data" id="form2" name="form2">
    <
    input type="text" name="email_newsletter" id="email_newsletter" value="" placeholder="il.tuo.indirizzo@email.it" />
    <
    input type="submit" name="submit" id="nl-submit" value="REGISTRATI" />
    </
    form
    la validazione funziona, ma una volta effettuato il controllo il form non viene inviato

    Qualcuno sarebbe così gentile da illuminarmi sull' errore? GRAZIE

  8. #8
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764
    ma è tutto sbagliato...
    codice:
    $('#form2').click(function(e){
    lo fai diventare
    codice:
    $('#nl-submit').click(function(e){
    e poi le parentesi della catena di if! dopo il secondo success l'ivio del form va fatto in un altro else

    codice:
    if (test1) {
    	//messaggio 1
    } else  {
    	if (test2) {
    		//messaggio 2
    	} else {
    		// invia form
    	}
    }
    per inviare il form:

    codice:
    $('#form2').submit();
    poi prima di rispondere controlla la data questo post è vecchio di due anni

  9. #9
    Intanto grazie per la risposta tempestiva !!!!
    Purtroppo il codice l ho recuperato da uno script molto più articolato, perche provando a crearne uno nuovo, anche con la clausola Jquery noconflict() chissà perche non funziona
    ho modificato il codice secondo le tue direttive, ed il controllo sulla validità dell' indirizzo email lo effettua mentre il submit del form no.

    posto il codice modificato

    codice:
    <script type="text/javascript">
    	(function($){
    	$(document).ready(function() {
    		$('#nl-submit').click(function(e){
    		
    	    e.preventDefault();
            var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
            var email  = $('#email_newsletter').val(),
    		data_html,
    		success = $('#success');
    
            if(email == ""){
            success.html('<div class="alert alert-error">Your email is required! Please Try Again!</div>')  ; 
            } else { if(reg.test(email) == false) {
    		success.html('<div class="alert alert-error">Invalid Email Address! Please Try Again!</div>')  ;
            } else{
              $('#form2').submit();}
    		}});
    	});
    })(jQuery);
        </script>
    P.s. per quanto riguarda la data del post, non l'avevo veramente notata. Purtroppo le colichette del piccino mi hanno regalato una nottata insonne...

  10. #10
    Utente di HTML.it L'avatar di cassano
    Registrato dal
    Aug 2004
    Messaggi
    3,000
    Ma

    (function($){
    $(document).ready(function()

    non sono la stessa cosa ?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.