Inserire dati Flash su Database Mysql

Design & Multimedia Blog

Inserire dati Flash su Database Mysql

Questo sistema è utile per inviare informazioni riservate direttamente nel Database Mysql. Utilizzeremo per tale necessità il Php, essendo anche il linguaggio più diffuso. Il tutorial in questione può essere preso in considerazione sia da principianti che da esperti.

comunicazione flash database


Per iniziare realizziamo un Form in Flash con i seguenti campi di input:

invia dati

Dopodichè ad ogni campo testuale diamo un nome “ Variabile “ che sarà uguale a quelli citati sull’immagine cioè : “ Nome , Cognome ecc.. “ .
Nel primo frame inseriamo questo ActionScript :

System.useCodepage = true;
stop();

Ora ci serve creare una tabella all’interno del Database . La tabella avrà il seguente nome “ utenti “. Per gli sviluppatori che utilizzano MySql sarà di facile comprensione , mentre per coloro che sono alle prime armi , scrivo qui di seguito la query da inviare affinché la tabella venga sviluppata correttamente :

CREATE TABLE 'utenti' (
'nome' varchar(50) NOT NULL,
'cognome' varchar(50) NOT NULL,
'indirizzo' varchar(50) NOT NULL,
'cap' varchar(5) NOT NULL,
'citta' varchar(50) NOT NULL,
'telefono' varchar(10) NOT NULL,
'email' varchar(50) NOT NULL,
'data' datetime NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;

La tabella dovrà avere gli stessi parametri come da immagine :

tabella mysql

Ok ora create la nostra tabella scrivo il codice ActionScript da Applicare al pulsante Invio:

// codice che associamo al pulsante
on (release){
// creiamo i due oggetti loadVars
carica = new LoadVars();
ricevi = new LoadVars();
// inseriamo le variabili nell'oggetto
carica.nome = _level0.nome;
carica.cognome = _level0.cognome;
carica.indirizzo = _level0.indirizzo;
carica.cap = _level0.cap;
carica.citta = _level0.citta;
carica.telefono = _level0.telefono;
carica.email = _level0.email;
// funzione onload: si attiva al
// completmanento del caricamento dello script
ricevi.onLoad = function (ok){
// elimina onLoad
delete this.onLoad;
// controlla che il caricamento abbia avuto
// successo
if(ok)
{
// controlla che l'inserimento abbia avuto
// successo
if(ricevi.error == "1"){_root.output.text = "Errore inserimento dati";}
else{_root.play();}
}
// l'inserimento non ha avuto successo,
// viene segnalato l'errore
else
{
_root.output.text = "Errore inserimento dati";
}
};
// carichiamo lo script PHP
carica.sendAndLoad("script.php", ricevi, "POST");
}

Molto semplice ed Intuitivo a quanto potete vedere . Dopodichè Creiamo con il nostro NotePad lo script in php che chiameremo “ script.php “ .

// Dati per la connessione al DB
$db_host = "localhost o host del vostro database";
$db_user = "username database";
$db_password = "password database";
$db_name = "vostro database";
// Connessione al DB
$db = mysql_connect($db_host, $db_user, $db_password);
$db_forum = mysql_select_db($db_name, $db);
// Query di inserimento
$query = "INSERT INTO `utenti` (nome, cognome, indirizzo, cap, citta, telefono, email, data)
VALUES ('".$_POST['nome']."', '".$_POST['cognome']."', '".$_POST['indirizzo']."', '".$_POST['cap']."', '".$_POST['citta']."', '".$_POST['telefono']."', '".$_POST['email']."', '".date('Y-m-d H:i:s')."')";
// Esecuzione query
$query_results = mysql_query($query) or die("&error=1");
echo "&stop=1";
?>

Ovviamente vi ricordo che i file devono essere tutti all’interno della stessa cartella , nella speranza che questo Tutorial vi sia stato di aiuto vi invito a restare sempre aggiornati su DesMM.com.
Buona Programmazione

Tag [,]
scritto da: Virpel
Virpel
Sabato, 07 Ottobre 2006
Segnalalo su: Upnews OKNOtizie del.icio.us Taggly Segnalo
Esprimi anche il tuo parere...

scrivi cosa ne pensi!


32 commenti su Inserire dati Flash su Database Mysql

  1. elio

    Non invia i dati…

    Venerdì, 20 Ottobre 2006
  2. Virpel

    Testa per bene il tutorial i dati vengono inviati

    Domenica, 29 Ottobre 2006
  3. anonymous

    “Testa per bene il tutorial i dati vengono inviati”

    no testalo bene tu prima di scriverlo:

    carica.sendAndLoad(”script.php”, receiver, “POST”);

    receiver non viene mai istanziata, semmai ricevi.

    ciao :)

    Venerdì, 29 Dicembre 2006
  4. DesMM

    Ciao ho corretto la riga in:
    carica.sendAndLoad(”script.php”, ricevi, “POST”);

    Come mi ha suggerito Virpel ho messi “ricevi”
    ciao

    Venerdì, 29 Dicembre 2006
  5. anonima

    salve, sto tentando di creare un database per un sito web che devo realizzare ma quando in mysql vado a costruire il database come sopra descritto mi dice che c’è un errore e questo errore non mi fa costriure il database perchè mi accade questo? vorrei che qualcuno mi risolvesse questo mistero

    Mercoledì, 28 Marzo 2007
  6. Virpel

    Mi spiace , ma si vede che la versione del database che hai è differente da quello che io ho postato ti invito a postare la versione del database mysql che hai per fare in modo di aiutarti . Buona Notte

    Giovedì, 29 Marzo 2007
  7. anonima

    grazie la versione che ho è la 5.2 se mi puoi aiutare mi fai un grandissimo favore

    Giovedì, 29 Marzo 2007
  8. anonima

    HO RISOLTO IL PROBLEMA SCABIAVO LE PARENTESI TONDE PER GRAFFE E NON METTEVO LA PRIMARY KEY E IN PIU’ MANCAVA UNA VIRGOLA DOPO NOT NULL HO CORRETTO TUTTO E LA TABELLELLA MI ESCE COSI:
    mysql> CREATE TABLE UTENTI (
    -> id int(11) NOT NULL primary key,
    -> nome varchar(20) NOT NULL,
    -> cognome varchar(20) NOT NULL,
    -> indirizzo varchar(20) NOT NULL,
    -> cap varchar(5) NOT NULL,
    -> citta varchar(20) NOT NULL,
    -> telefono varchar(15) NOT NULL,
    -> email varchar(50) NOT NULL,
    -> data datetime NOT NULL);
    Query OK, 0 rows affected (1.69 sec)
    mysql> DESCRIBE UTENTI;
    +———–+————-+——+—–+———+——-+
    | Field | Type | Null | Key | Default | Extra |
    +———–+————-+——+—–+———+——-+
    | id | int(11) | NO | PRI | | |
    | nome | varchar(20) | NO | | | |
    | cognome | varchar(20) | NO | | | |
    | indirizzo | varchar(20) | NO | | | |
    | cap | varchar(5) | NO | | | |
    | citta | varchar(20) | NO | | | |
    | telefono | varchar(15) | NO | | | |
    | email | varchar(50) | NO | | | |
    | data | datetime | NO | | | |
    +———–+————-+——+—–+———+——-+
    9 rows in set (0.17 sec)
    VOLEVO CHIEDERTI SE IL CAMPO DEFAULT HA LA STESSA FUNZIONE DELL’AUTOINCREMENT.
    GRAZIE IN ANTICIPO

    Giovedì, 29 Marzo 2007
  9. Virpel

    Sono due funzioni diverse . Comunque spero che ora lo script ti funga. Ciao

    Giovedì, 29 Marzo 2007
  10. Mikk

    Sto provando questo script su http://www.graphoskop6054.com/kiss/iscrizione.swf
    ma alla pressione del pulsante invia tutto rimane inerme, quale può essere il problema? (tenendo conto che lo script è praticamente copia-incollato)

    Lunedì, 09 Aprile 2007
  11. WILEz

    Vorrei sapere se è possibile avere un tutorial per fare l’inverso, ovvero leggere i dati da un database e visualizzarli in flash con dei movieClip divisi per record…

    La connessione la so fare, prendo i dati con flash dall’echo finale….

    Ma non riesco a dire a flash come creare un MovieClip per ogni record ed inserirci il testo preso dal record..
    Qualcuno lo sa fare o sa un tutorial da dove sbirciare?

    Grazie.

    Mercoledì, 09 Maggio 2007
  12. anonimo

    Prova ad andare all’ indirizzo www.actionscript.it/showContent.cfm?id=90

    Mercoledì, 16 Maggio 2007
  13. bhu

    mh a me da un errore:
    Description:
    The identifier ‘loadVars’ will not resolve to built-in object ‘LoadVars’ at runtime.

    Source:
    carica = new loadVars();

    se qualcuno mi sa aiutare lo ringrazio in anticipo ;P

    ciaoz

    Martedì, 29 Maggio 2007
  14. Simone

    mi dà questi errori in output o.0

    Target non trovato: Target=”undefined” Base=”_level0″
    Target non trovato: Target=”undefined” Base=”_level0″

    grazie se qualcuno mi aiuterà :)

    Giovedì, 20 Dicembre 2007
  15. cristiano

    in effetti mi è parso che sia stato pubblicato senza nemmeno essere testato, LoadVars si scrive con la maiuscola quindi non poteva funzionare… ma anche corretto questo errore non va, alla premuta del bottone aspetta un po ma quando la barra di stato del browser (firefox:è questo il problema?) mi dice “completato” vado a vedere sul db e non c’è scritto niente…
    sono desolato, sto cercando da settimane e in internet non c’è UN SOLO tutorial funzionante…

    Martedì, 19 Febbraio 2008
  16. dario

    anche io ho lo stesso errore di Simone… ma alla fine avete rinunciato???

    Mercoledì, 26 Marzo 2008
  17. Maurizio

    ciao, vedo che tutti hanno dei problemi ma non si risolvono. Ho, infatti, copiato tutto il tutorial, analizzato punto per punto, seguito tutti i problemi postati ma il risultato è, cliccando su invia dati non accade assolutamente NULLA. Qual’ è realmente il problema ?
    Come mai Virpel dice che i dati vengono inviati ?
    Inoltre questo è lo stesso identico tutorial presente su webmasterpoint.it con la sola differenza dei comandi da inserire nel primo frame (quì ci sono, su webmaster no). Non vorrei che come dice Simone abbiate rinunciato……

    Martedì, 01 Aprile 2008
  18. Virpel

    Per Prima cosa , le sarei grato di non scrivere altri siti di riferimento , Dopodichè la sua affermazione può sembrare di accusa e mi sta catalogando come un ” falso ” che copia da siti altrui i tutorial , quando tranquillamente puo essere successo viceversa ( quindi senza mettere zizzanie in mezzo siete pregati di postare i problemi e basta ) . Controllerà il tutorial nuovamente sperando di trovare i problemi da voi riscontrati e vi auguro Buona giornata , Spero che riuscirò ad esservi di aiuto . Nel momento in cui risolverò il problema , vi informerò tramite commento .

    Mercoledì, 02 Aprile 2008
  19. Virpel

    Abbiamo Aggiusto il Tutorial ” Inseire Dati Flash Su Database MySql . Ci scusiamo per l’inconveniente restiamo a vostra disposizione , Se avete problemi non esitate a contattarci . Buona Giornata

    Giovedì, 03 Aprile 2008
  20. Maurizio

    Grazie per aver aggiornato il tutorial ma :
    1) nella creazione della tabella, utilizzando i comandi MySQL si ottiene il seguene errore ——-
    Messaggio di MySQL:

    #1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ”utenti’ (
    ‘nome’ varchar(50) NOT NULL,
    ‘cognome’ varchar(50) NOT NULL,
    ‘indi’ at line 1

    Ho creato la tabella manualmente campo per campo come da schema.

    2) Il codice PhP manca dell’ apertura “<?” e l’ ho corretto manualmente

    3) Ho inserito i codici di flash sia sul primo frame che sul pulsante

    Chiaramente ho corretto lo script.php inserendo i dati del mio server/database

    Risultato
    ======
    i campi nella maschera vengono azzerati ma non viene inviato/registrato alcun dato.

    Giovedì, 03 Aprile 2008
  21. Virpel

    Hai ragione pe lo script php , comunque posteremo il prima possibile dei file sorgenti in modo che facciamo contenti tutti , per uanto riguarda mysql non ti saprei dire , sono comani che funnzionano con il MySql 5.0 . In flash hai fatto bene , i file devono stare nella stessa cartella , e devono essere testati in remoto per avere un risultato .

    Giovedì, 03 Aprile 2008
  22. Maurizio

    Dopo tantissimi tentativi sono riuscito a far arrivare i dati al database ma quello che viene trascritto nei campi sono i nomi delle variabili flash infatti al posto del nome c’è _level0.nome, al posto del cognome _level0.cognome e così via per tutte le variabili solo la data è corretta in quanto non viene passata come variabile ma presa direttamente dal sistema. C’è qualcosa tra l’ action script e lo script PhP che non funziona

    Venerdì, 04 Aprile 2008
  23. Virpel

    Forse hai sbagliato solo a mettere il nome ai campi di input nel flash . Se vedi nelle proprietà c’è ” Nome istanza ” e “variabile ” lo si deve inseire in variabile il nome del campo tipo ” nome , cognome , indirizzo ” se no è ovvio che ti invia level0.nome ecc.. spero di essere stato chiaro .

    Venerdì, 04 Aprile 2008
  24. Maurizio

    Ciao ho provveduto a verificare i nomi dei campi, delle istanze e delle variabili e sia con il nome istanza+nome variabile sia con il solo nome variabile nei campi viene inserito <FONT FA a parte nella data il cui valore è corretto.
    Come vedi c’è sempre qualcosa che non funziona. Un primo passo è stato quello di raggiungere il DB pian piano forse si riuscirà a fargli scrivere il contenuto corretto.

    Sabato, 05 Aprile 2008
  25. Maurizio

    Il contenuto totale del campo è
    “<FONT FA”
    nel messaggio precedente è stato tagliato

    Sabato, 05 Aprile 2008
  26. Maurizio

    Purtroppo il messaggio viene modificato all’ atto dell’ invio tolgo le “” e le sostituisco con “-” altrimenti non arriva completo
    - “TEXTFORMAT LEADING=”2″- -P ALIGN=”CENTER”–FONT FA

    Sabato, 05 Aprile 2008
  27. Maurizio

    Scusa ancora ma, avevo dimenticato di dirti che all’ avvio del swf nei campi compaiono i nomi e cioè _level0.nomecampo è normale?

    Sabato, 05 Aprile 2008
  28. Virpel

    Allora Maurizio io ti voglio dare una mano , ma mi devi seguire , mettendo anche al nome istanza un valore è normale succeda ciò . Devi inserire il nome del campo sono nella variabile e vedi che non apparirà leve0.nome . Per il resto non so come esserti di aiuto . Appena posso caricherò dei file di esempio.

    Sabato, 05 Aprile 2008
  29. Maurizio

    Ti ringrazio per la disponibilità e, ho riprovato ancora una volta con le sole variabili senza instanziare nulla ma il risultato è lo stesso e cioè
    il contenuto dei campi salvo la data è il seguente:
    - “TEXTFORMAT LEADING=”2″- -P ALIGN=”CENTER”–FONT FA
    i campi all’ avvio sono vuoti.

    grazie

    Lunedì, 07 Aprile 2008
  30. ale

    mi da errore l’ultimo else del pulsante inviadati!!!!

    ‘else’ encountered without matching ‘if’

    e poi il release non è chiuso!!! cosa devo fare? grazie

    Giovedì, 01 Maggio 2008
  31. margherita

    Ciao Virpel, dopo tutti questi commenti negativi vorrei darti una buona notizia. Il tuo tutorial è perfetto e mi è stato di grande aiuto. Vorrei darti solo un consiglio: inserisci nel movie di flash un pulsante che cancelli i dati inseriti nel modulo oppure fai in modo che gli stessi spariscano dopo l’inserimento. Quindi grazie, soprattutto perchè dai la possibilità a noi piccoli praticanti di costruire siti di una certa complessità.

    Venerdì, 09 Maggio 2008
  32. Virpel

    Ringrazio le persone come Margherita che seguono bene e leggono soprattutto bene i tutorial affinche questi riescano ad essere eseguiti correttamente .

    A tutti coloro che hanno problemi , vi ricordo che il Tutorial è una Guida per imparare l’utilizzo di alcune applicazioni , che senza la pazienza e una minimo di pratica tornano ad essere inutili .

    Un consiglio : ” Leggete con attenzione ” .

    Martedì, 13 Maggio 2008







Template DesMM 4
Engine by WordPress
Design & Multimedia Blog © 2002 - 2008 | Curriculum webmaster
Progetto e Design sono esclusiva proprietà di Massimo Mastromarino.
Entries (RSS) | Comments (RSS) | Licenza d'uso