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

    gestire le risposte a chiamate $.ajax

    Ciao a tutti, è da un paio di mesi che sono tornato a dilettarmi di webdesign.
    Mi sono rivolto a quest forum per condividere un paradosso.
    Ho creato una pagina di registrazione tramite validazione jquery validation plugnin, e con tre funzioni ajax che controllano i dati con il db, tutte interfacciate a pagine php che vegono richiamate dalle funzioni jquery ajax.
    Posto la pagina che riguarda il javascript non spaventatevi l'ho commentato per essere di maggiore comprensione. IL PROBLEMA è SULLA PRIMA CHIAMATA AJAX CHE, NONOSTANTE VENGA ESEGUITA E RESTITUISCE AL DOM LA RISPOSTA DELLA PAGINA ACTIVATION.PHP,
    L'IF DI CONTROLLO NON VIENE CONSIDERATO E MI DA SEMPRE ESITO NEGATIVO.

    AIUTATEMI è UNA SETTIMANA CHE DEDICO 3/4 ORE AL GIORNO PER RISOLVERE QUESTO PROBLEMA.


    codice:
    // recupero le varibili di ritornate dal link presente nella mail di conferma
    
    function parseGetVars()
    {
      
      var args = new Array();
      var query = window.location.search.substring(1);
      if (query)
      {
       var strList = query.split('&');
        for(str in strList)
        {
          var parts = strList[str].split('=');
          args[unescape(parts[0])] = unescape(parts[1]);
        }
      }
      return args;
    }
    
    var get = parseGetVars();
    var attivationvar = get['attivation'];
    var uservar = get['user'];
    // FINE-----recupero le varibili ritornate dal link presente nella mail di conferma
    
    // eseguo chiamata ajax  che verifica la presenza del link di validazione tramite aperto dall'email di conferma inviando i dati ad activation.php; la pagina php restituisce l'echo "1"; se la pag. php ha esito positivo o l'echo "0"; se l'esito è negativo.
    jQuery(document).ready(function($){ 
    
    //-------------PROBLEMA------------PROBLEMA
    $(function() {
    $.ajax({
    			type: "POST",
    			url: "activation.php",
    			data: "attivation=" + attivationvar + "&user=" + uservar,
    			//dataType:"html",
    			success: function(data) {
    				  if(data == "1") {
    					  $("#message").html('siiiiiii');
    					  //alert("you are logged in successfully!");
    					} else {
    						 $("#message").html('NOOOOOOO');
    					// alert("you are NOT logged in successfully!");
    					}
    					},
                error: function() {alert('failed');}
    			
    		});
    });
    //-------------PROBLEMA------------PROBLEMA
    
    
    
    //FINE---- verifica link conferma mail ajax
    	
    // funzione che fa apparire una lightwindow cliccando sul pulsante register now
    //------------popup lightwindow	
    	
    										$(".apri").click(function(){
    										
    										$('#overlay').fadeIn('fast');
    										
    										$('#form').fadeIn('slow');
    										
    										});
    										
    										$(".chiudi").click(function(){
    										
    										$('#overlay').fadeOut('fast');
    										
    										$('#form').hide();
    										
    										});
    										
    										$("#overlay").click(function(){
    										
    										$(this).fadeOut('fast');
    										
    										$('#form').hide();
    										
    										});
    
    //FINE-----funzione che fa apparire una lightwindow cliccando sul pulsante register now	
    // validazione form registrazione	
    	$("#form").validate({
    	wrapper: "li",
    	errorLabelContainer: $("#error"),
    		
    		rules: {
    			name: {
    				required:true,
    				minlength:3,
    				maxlength: 20
    			},
    			lastname: {
    				required: true,
    				minlength:3,
    				maxlength: 20
    			},
    			year: {
    				required: true
    			},
    			user: {
    				required: true,
    				email: true,
    				remote: "mailcheck.php"  //verifica presenza nel database collegato a file php esterno
    			},
    			userrpt: {
    				required: true,
    				equalTo: "#user",
    			},
    			phone: {
    				required: true,
    				digits: true,
    				maxlength: 10
    			},
    			address: {
    				required: true,
    				minlength: 5,
    				maxlength: 30
    			},
    			city: {
    				required: true,
    				minlength: 4,
    				maxlength: 20
    			},
    			country: {
    				required: true
    			},
    			password: {
    				minlength: 6,
    				maxlength: 10,
    				required: true
    			},
    			passwordrpt: {
    				required: true,
    				equalTo: "#password"
    			}
    		},//rules
    		
    		messages:{
     name: {
    				required: "name: is required",
    				minlength: "name: enter at least 3 characters",
    				maxlength: "name: enter no more than 20 characters"
    			},
    			lastname: {
    				required: "lastname: is required",
    				minlength: "lastname: enter at least 3 characters",
    				maxlength: "lastname: enter no more than 20 characters"
    			},
    			year: {
    				required: "date of birth: is required"
    			},
    			user: {
    				required: "mail: is required",
    				email: "email: enter a valid email address",
    				remote: "email: this email address is already in use"  //verifica presenza nel database collegato a file php esterno
    			},
    			userrpt: {
    				required: "re-mail: is required",
    				equalTo: "re-mail doesn't match"
    			},
    			phone: {
    				required: "phone: is required",
    				digits: "phone: enter only digits",
    				maxlength: "phone: enter no more than 10 characters."
    			},
    			address: {
    				required: "address: is required",
    				minlength: "address: enter at least 5 characters",
    				maxlength: "address: enter no more than 30 characters"
    			},
    			city: {
    				required: "city: is required",
    				minlength: "city: enter at least 4 characters",
    				maxlength: "city: enter no more than 20 characters"
    			},
    			country: {
    				required: "country: is required"
    			},
    			password: {
    				required: "password: is required",
    				minlength: "password: enter at least 6 characters",
    				maxlength: "password: enter no more than 10 characters"
    			},
    			passwordrpt: {
    				required: "re-password: is required",
    				equalTo: "re-password: doesn't match"
    			}
         
        },//end messages
     //FINE----validazione form registrazione 
    
    //funzione ajax di invio dati a reg.php per inserimento nel DB ed invio mail con link	
        submitHandler: function(form) {
              $.ajax({
                type: "POST",
                url: "reg.php",
                data: $(form).serialize(),
                //timeout: 3000,
    			beforeSend: function() {
                    $('#sending').show('fast');
    				},
               
    				 success: 
    				 function(result2) {
    				  if (result2 == 'success') {
    					$('#sending').hide();
    					alert("Registration successfull: check your email address and click on link to finish registration");
    					$('#overlay').fadeOut('fast');
    					$('#form').hide();
    					} else {alert("your email address is already registered"); 
    					$('#sending').hide();
    					$('.apri').hide();
    					}
    					},
                error: function() {alert('failed');}
              });
              return false;
          }
      });//validate
    //FINE----Validazione e funzione ajax di invio dati a reg.php per inserimento nel DB ed invio mail con link	
    	
    // funzione ajax per gestione login utente
    	$("#login").click(function() {
    		$.ajax({
                type: "POST",
                url: "doLogin.php",
                data: $(form1).serialize(),
    			
         		success: function(result3) {
    				  if (result3 == 'success') {
    					$("#form1field").hide(0);
    					$("#form1fieldpass").hide(0);
    						$("#login").hide(0);
    						$(".apri").hide(0);
    						$('#message').css('padding-top','50px')
    						$('#message').css('font-size','20px')
    						$('#message').css('border','0px')
    						$("#message").show('fast').html("
    
    You are logged in successfully!</p>");
    					$('.apri').hide();
    					} else {alert('failed else');}
    					},
                error: function() {alert('failed');}
              });
    		
    		return false;
    	});
    //FINE---- funzione ajax per gestione login utente
    
    
    });//FINE--- document.ready

  2. #2

    grazie del vostro supporto comunque ho risolto

    Ok alla fine ho usato json come risposta ad ajax. Vi posterei il codice ma non mi sembra il caso

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.