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

    Recupero e confronto dati

    Ciao Ragazzi,
    Ho bisogno di aiuto.

    Ho un semplicissimo modulo che permette agli utente di registrare la propria e-mail in una mailinglist ( classico ! )

    Vorrei però che lo script prima di registrare l'e-mail controllasse che non sia già presente nel db.

    Qualcuno ha già qualche idea in merito o meglio ancora il codice già pronto ?

    Ho una tabella MySQL con il campo email, dovrei prelevare i dati da una pagina.php e impostare una condizione if ( presumo ) che effettui la verifica.

    Rimango in trepida attesa

  2. #2
    Utente di HTML.it L'avatar di negatyve
    Registrato dal
    Feb 2001
    Messaggi
    9,479
    Codice PHP:
    <?
        $e_mail 
    $_POST['email']
        
    $d_conn mysql_connect("localhost""tuo_db_username""tuo_db_password");
        
    mysql_select_db("nome_del_database");

        
    $q_rows mysql_query("SELECT * FROM tua_tabella WHERE email = '" $e_mail "'");
        
    $n_rows mysql_num_rows($q_rows);
        if(
    $n_rows 0){
            
    $result "&risposta=SI&";
        } else {
            
    $result "&risposta=NO&";
        }
        echo(
    $result);
    ?>
    In flash:
    codice:
    var controllo = new LoadVars();
    controllo.email = campo_di_testo_con_indirizzo.text;
    controllo.onLoad = function(success)
    {
    	if(success){
    		if(this.risposta == "SI"){
    			// indirizzo già presente
    		} else {
    			// nuovo indirizzo
    		}
    	} else {
    		trace("impossibile contattare il server");
    	}
    }
    controllo.sendAndLoad("pagina_di_controllo.php", controllo, "POST");

  3. #3
    Grande !
    Grazie My Moderator !!

  4. #4
    Scusa Negative,
    Io ho già questo codice nel pulsante che invia i dati del modulo

    Dove devo utilizzare il codice che mi hai passato ?

    Poi avrei ancora un quesito:
    cosa devo mettere come "campo_di_testo_con_indirizzo.text "

    codice:
    on (release) {	
    	if (nome == "" || nome == undefined) {
    		// Qui va il codice in caso di nome inesistente
    		this.gotoAndStop("nome");		
    } else if (cognome == "" || cognome == undefined) {
    		// Qui va il codice in caso di messaggio inesistente	
    		this.gotoAndStop("cognome");		
    }else if (email == "" || email == undefined) {
    		// Qui va il codice in caso di email inesistente
    		this.gotoAndStop("email");
    } else if (!email.corretta()) {
    		// trace("Inserire una email nel formato nome@provider.xx");
    		this.gotoAndStop("email2");		
    		
    		
    }else if (_root.modulo.eta == "" || _root.modulo.eta == undefined) {
    		// Qui va il codice in caso di messaggio inesistente	
    		this.gotoAndStop("eta");				
    }else{		
    // Qui va il codice in caso di successo
    		this.gotoAndPlay("ok");		
    		loadVariablesNum ("reg_mailinglist.php", 1, "POST");		
    	}
    
    }

  5. #5
    codice:
    controllo.email = campo_di_testo_con_indirizzo.text;

    Ho capito che il campo di testo è il dato che deve essere confrontato, infatti se gli vado a scrivere un indirizzo presente mi fà il confronto ovvero "email presente nel db" ; ma come faccio a scrivererlo in modo dinamico.

    In pratica dovrebbe essere associato al campo di input (email) che l'utente va a inserire ?

    In ogni caso come faccio ad inserirlo nel resto dello scipt ?

  6. #6
    UP

  7. #7
    Qualcuno oltre Negatyve mi può aiutare !!

  8. #8
    Negatyve,
    Lascia perdere mi stò leggendo la tua lezione sul "LoadVars" e forse ho capito dove sbaglio.
    E' da un pò che non uso Flash e Flash MX non lo conosco ancora bene !

    Provo a corregere qualcosa e ti fò sapè !!

  9. #9
    Urge aiuto disperato !!

    Come indicatomi da Negatyve ho cercato di far funzionare questo script alla bisogna, ma ho ancora un pò di problemi.

    Ho capito come fare il confronto se l'email è già presente nel db, ma il problema consiste nel fatto che anche se verifica che il campo nullo mi popola ugualmente la tabella nel db.

    Come posso fare per bloccare l'invio dei dati se tutti i campi non sono riempiti ?

    Ed inoltre in questo semplice modulo, che raccoglie appunto:
    1.nome
    2.cognome
    3.email

    avevo anche messo un mc che simulasse un radioGroup, per reperire l'età di chi si registra ( i componenti di Flash MX non li sò usare ) come faccio ad inviare anche i dati del mc se non sono .text ? e se fosse possibile inserire anche il MC nella funzione del LoadVars, come devo indicarne il target ?


    Questo il codice:

    codice:
    on (release) {
    var controllo = new LoadVars();
    controllo.nome = nome.text;
    controllo.cognome = cognome.text;
    controllo.email = email.text;
    controllo.onLoad = function(success){
    
    	if(success){
    		if (nome.text == "" || nome.text == undefined) {
    		// Qui va il codice in caso di nome inesistente
    		gotoAndStop("nonome");
    
    	} else if (cognome.text == "" || cognome.text == undefined) {
    		// Qui va il codice in caso di messaggio inesistente	
    		gotoAndStop("nocognome");	
    
    	} else if (email.text == "" || email.text == undefined){
    // Qui va il codice in caso di email inesistente
    	gotoAndStop("noemail");
    
    } else if (!email.text.corretta()) {
    // trace("Inserire una email nel formato nome@provider.xx");
    gotoAndStop("email2");
    
    }else if (this.risposta == "SI") {	
    	// indirizzo già presente
    	gotoAndStop("giaemail");
    	exit;
    } else {
    		gotoAndPlay("ok");
    		// nuovo indirizzo
    		}
    	
    	} 
    }
    controllo.sendAndLoad("reg_mailinglist.php", controllo, "POST");
    
    
    }


    Vi prego aiutatemi !!

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.