Flashmx2004 class sql (mysql & access) v5.5 (avec php)

Soyez le premier à donner votre avis sur cette source.

Vue 19 790 fois - Téléchargée 3 493 fois

Description

Salut,

Voici une nouvelle version de ma Class MySql, qui devient la Class Sql.
Connectez vous maitenant a une source de données MySql ou Access (attention dns enregistrer)
J'ai ajouter aussi une méthode 'format' ds la class pour encodé les chaine de caractère passé dans une requette, cette méthode vous permet d'evidé des problemes d'encodage sur des caratères comme %, ' et ".
le décodége et automatique lors que la recupération des resultat.

Pour interroger un server MySql ou une base access depuis FlashXM2004, en utilisant un script php.
Aucune modification a apporter au script php.

Utilisation simple :
1) on creer un objet MySql
2) on definie une fonction pour traiter le retour de données (class ResultSet incluse)
3) on execute une commande sql.

2 fonctions utils, 1 pour lister les bases de données sur le serveur, et 1 pour lister les tables ('show tables') d'une base de donnée.

Ce code est bien sur libre de droit, modifier le à volonté, mais se serait cool de me tenir au courant d'evolutions importantes et interressantes ... :)

Source / Exemple :


y'a un exemple dans le zip en plus de ceci :

// Importer les class
import Class.Sql;

// créer un nouvel objet Sql
var sql:Sql = new Sql("http://localhost/_FlashPhp/sql.php");  // ou en chemin relatif bien sur Sql("sql.php");
sql.showtime = true;

// tout d'abord les données de connexion
sql.type = "odbc"; 	// mysql ou odbc.
sql.host = "localhost"; // uniquement pour mysql
sql.login = "root";
sql.mdp = "";

// ensuite la base de donnée a selectionner
//sql.dbname = "test"; 		//mysql test
sql.dbname = "FlashSqlODBC"; 	//odbc test

// ensuite definisez la méthode d'analyse de retour serveur :
sql.onResult = function(rs){
    if (rs.isError()){
        trace rs.getError();
        return;
    }
    ...
    votre code
    ...
}

// puis invoqué une methode pour le serveur, soit un requette sql, soit une des 2 fonctions listeBases, listeTables
sql.listeDB(); 		// lister les base du server mysql uniquement
sql.listeTables(); 	// lister les tables d'un db
sql.execute ("select * from test1");

// utiliser sql.format(string) pour formater du text pour transmission http
var q = "insert into table1 (login) values ('";
q += sql.format("c'est + - * / = comment ?\"racontes % moi");
q += "')";
sql.execute(q);
// q est alors egal à : insert into table1 (login) values("c& &pl; * / = comment ? &damp; racontes &pc; moi");

// lors du retour de resultats, utiliser la methode onResult(rs), rs etat les resultset renvoyé et parsé.
// ResultSet comporte les proprietes suivantes :
rs.rowCount > nb resultats
rs.columnCount > nb colonnes
rs.columnNames > tableau contenant les entetes du resultat
rs.columnTypes > renvois un tableau des types de champ de la base
rs.getRow(numRow) > renvois la ligne de resultat demandé (ss forme de tableau)

Conclusion :


je pense que j'ai a peu pres tt mis ...
Bon developpement ...
Pensez a me proposer vos idées d'améliorations possible, bug constatés, ...
contact mail : benjamin@kolapsis.net

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

SuperDevy
Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007
-
Géant ! Et si en plus ça marche, c'est du bonheur...

J'était avide d'une telle source, moi qui n'arrive pas à comprendre le fonctionnement de MySQL.

Malheureusement, je n'ai pas MX 2004 et je suppose que ça peut pas marcher avec MX ! ;-[
top30
Messages postés
1158
Date d'inscription
vendredi 21 février 2003
Statut
Membre
Dernière intervention
6 août 2010
-
C'est super bon.. Ton approche est quasi la même que la mienne. Toi tu balance le query totale ment "Stringé" et retourne un tableau... C'est une bonne approche... La mienne tu construit le Query en flash genre...
maRequete = new Query (server) ;
maRequete.select ("variable");
maRequete.where ("ID, 0, 9);
maRequete.consult (dataBase);

Et ca me retourne un XML... Je te tire mon chapeau car moi des Class comme ca je prefere les garder pour moi (Egoiste ??? Ou la sensation de voir s'echapper un gros travail t appartenant???)...

J ai mis 9 ! Encore bravo !
LocalStone
Messages postés
515
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
1 mars 2009
-
Bon, bah vous m'avez convaincu, tous, là. Je me lance dans l'ActionScript 2.0. Merci !
djawel
Messages postés
49
Date d'inscription
lundi 1 juillet 2002
Statut
Membre
Dernière intervention
11 janvier 2006
-
bô boulot
BlackWizzard
Messages postés
1277
Date d'inscription
mercredi 21 mars 2001
Statut
Modérateur
Dernière intervention
21 juin 2009
2 -
tres bon boulot :)
9/10
bienvenue sur le site ;)

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.